Per OS X 10.10 e versioni successive, utilizza il seguente esempio codice AppleScript :
set defaultBrowser to do shell script "defaults read \
~/Library/Preferences/com.apple.LaunchServices/com.apple.launchservices.secure \
| awk -F'\"' '/http;/{print window[(NR)-1]}{window[NR]=$2}'"
if defaultBrowser is "" or defaultBrowser contains "safari" then
-- # The default Browser is Safari.
set defaultBrowser to "Safari"
-- # Your code goes here.
else if defaultBrowser contains "chrome" then
-- # The default Browser is Google Chrome.
set defaultBrowser to "Google Chrome"
-- # Your code goes here.
else if defaultBrowser contains "firefox" then
-- # The default Browser is Firefox.
set defaultBrowser to "Firefox"
-- # Your code goes here.
else
set defaultBrowser to "Other"
-- # Your code goes here.
end if
Nota: l'inizio dell'istruzione if defaultBrowser non viene eseguita per niente "" e "safari" , perché, se Safari è l'unico Browser installato o se è installato un altro Browser e non ha mai impostato un Browser predefinito, quindi per impostazione predefinita non verrà restituito nulla il comando do shell script "defaults ..." , e questo significa che Safari è il Browser predefinito
.
Nel esempio AppleScript codice sopra, il valore della defaultBrowser variabile inizialmente viene impostato su uno dei seguenti valori :
- Nulla:
""
-
com.apple.safari
-
com.google.chrome
-
org.mozilla.firefox
- Alcuni altri:
output
Quindi all'interno dell'istruzione if , defaultBrowser viene impostato sul nome corretto del Browser . Sebbene tu possa certamente modificare come necessario / desiderato.
Nota anche che il do shell script comando qui usato è più efficiente dell'altra risposta, che usa inutilmente il plutil comando per convertire prima file binario plist in un file xml plist e successivamente in un file plist binario . Inoltre usa inutilmente grep e awk quando entrambi non sono necessari poiché defaults e awk (o solo defaults e grep ) possono farlo senza tutti i rigroci extra.
Per pre OS X 10.10, sostituisci:
~/Library/Preferences/com.apple.LaunchServices/com.apple.launchservices.secure
Con:
com.apple.LaunchServices
Nel comando do shell script "defaults ..." .