Espansione del mio commento sopra ....
Vedere il commento per utente kerma all'indirizzo questo articolo relativo a StackFlow
La sua piccola app a linea di comando sul link fa ciò di cui hai bisogno.
Ha fornito il codice sorgente ma è stato progettato per 10.9. Un piccolo cambiamento può farlo compilare anche su 10.6. L'ho provato sul mio sistema e ha funzionato correttamente.
Tutto quello che devi fare è eseguirlo in questo modo ...
#defaultbrowser -set firefox
#defaultbrowser -set safari
Le modifiche apportate, per farlo funzionare con 10.6, erano
a) Aggiungi il framework Cocoa
b) Apporta il seguente codice di modifica ...
Sostituisci
NSString *split = HTTPHandlers[i];
con
NSString *split = [HTTPHandlers objectAtIndex:i];
EDIT:
Come è stato sottolineato, il codice non cambia il browser predefinito per HTTPS. Per aggiungere questa funzionalità, ho aggiunto le seguenti righe ...
Trova la prima riga in basso e aggiungi la seconda per https
CFStringRef urlschemeref = ( CFStringRef)@"http";
CFStringRef urlschemeref2 = ( CFStringRef)@"https";
e lo stesso qui
OSStatus s = LSSetDefaultHandlerForURLScheme(urlschemeref, newHandler);
OSStatus s2 = LSSetDefaultHandlerForURLScheme(urlschemeref2, newHandler);
Infine cambia
if (s == 0) {
a
if (s == 0 && s2 == 0) {
Per quanto riguarda la programmazione, poiché sanno cosa è cron, presumo che sappiano come apportare le modifiche necessarie. In caso contrario, una ricerca di Google fornirebbe le risposte necessarie. Quindi le linee di cron sarebbero ...
0 9 0 0 1-5 /path/to/app/defaultbrowser -set chrome
0 18 0 0 1-5 /path/to/app/defaultbrowser -set safari
BUT, un modo molto migliore, perché le attività di cron non vengono eseguite quando il sistema è spento, deve avere un mezzo per rilevare la posizione (come la connessione wifi) e cambiare in base a ciò. Quindi se il cron job è impostato alle 9:00 e arrivi in ritardo al lavoro, accendi il dispositivo alle 9:15. Non succederà nulla ...
Quindi come discusso qui , vorrei raccomandare che installano ControlPlane o qualcosa del genere, e programmano invece la modifica sulla connessione al wifi / rete.
Spero di esserti stato utile.