Beenden, wenn für X-Zeit inaktiv, Problem beim Speichern des Skripts als App

0

Ich habe ein kleines Skript erhalten, mit dem die App beendet wird, wenn der Computer X-mal inaktiv ist. Es funktioniert einwandfrei, aber wenn ich es als App speichere und starte, kann ich es nicht beenden. Das Ergebnis ist, dass ich das Beenden meiner Skript-App erzwingen muss, um meinen Computer neu zu starten. Kann ich das beheben? Ist es die Wiederholungsschleife, die es nicht schafft?

Vielen Dank

    # Action lorsque que l'ordinateur est sans activité pendant un certain temps
#
set cmd to "echo $((`ioreg -w 0 -c IOHIDSystem | sed -e '/HIDIdleTime/ !{ d' -e 't' -e '}' -e 's/.* = //g' -e 'q'` / 1000000000))"

#
# Définir ici le nombre de seconde en idle avant d'exécuter l'action 
#
set maxIdleAllowed to 90

#
# Conbien de fois vérifier le idle en seconde
#
set checkInterval to 5

#
# On loop indéfiniment
#
repeat
    set secsIdle to 0

    try
        set answer to (do shell script cmd)
        set secsIdle to (answer as number)
    on error
        # May want to do something fancy here...
        exit repeat
    end try

    log secsIdle

    if secsIdle > maxIdleAllowed then
        # Changer le nom de l'application TextEdit pour votre application
        tell application "FileMaker Pro" to quit
    end if

    delay checkInterval
end repeat
Rodrigue Amyot
quelle

Antworten:

0

Ich denke, das ist was Sie suchen: https://stackoverflow.com/questions/38530412/exit-infinite-loop-by-quitting-application#38531544

Weitere Informationen von Apple: https://developer.apple.com/library/content/documentation/AppleScript/Conceptual/AppleScriptLangGuide/conceptual/ASLR_about_handlers.html#//apple_ref/doc/uid/TP40000983-CH206-SW7

Und noch eine Referenz: https://scriptingosx.com/tag/idle/

Grundsätzlich möchten Sie anstelle Ihrer Wiederholung eine Ein-Leerlauf-Wiederholung durchführen

Alex
quelle
Nur-Link-Antworten werden verpönt und entmutigt, da Verbindungen möglicherweise unterbrochen werden und dies dazu führen kann, dass eine Nur-Link-Antwort wertlos wird. Nur-Link-Antworten können auch gelöscht werden, nur weil sie Nur-Link-Antworten sind! Bitte fügen Sie die relevanten Informationen hinzu, damit die Antwort für sich allein steht, ohne dass die derzeit verfassten Links unbedingt erforderlich sind.
user3439894