Nota: Yo también soy un niño, espero que los demás no me vean como un traidor por dar esta respuesta?
Aquí está el comienzo de mi solicitud. Es un trabajo en progreso. Voy a editar muy pronto para incluir puede nuevas características tales como
-
Edición remota de la configuración (como la que permite el control parental)
-
Posibilidad de recibir una alerta si el niño intenta saltarse la restricción
-
Posibilidad de ampliar el tiempo (¿sistema de recompensa?) con una contraseña parental
-
Posibilidad de saltarse la restricción por completo con la contraseña de los padres
-
Alertas múltiples
-
Más registros
-
Más comentarios en el código
-
LaunchAgent y LaunchDemon
-
Muchas más funciones
Abrir esto en script Editor y exportarlo como un Sólo lectura aplicación y asegúrese de que permanecer abierto después de la ejecución del manipulador está marcada
Después de exportar siga este para evitar que aparezca en el muelle.
Para salir, vaya al Monitor de Actividad, busque el nombre de la aplicación y pulse la X en la esquina superior izquierda de la ventana.
## Time Limiter - Created by Josh Brown - Created June 8th 2018 - Last Modified June 8th 2018 ##
global applist
global timelimit
global timelimits
global day1
global day2
## Settings ##
set applist to {"Google Chrome", "App Store"} -- Apps to limit
set timelimit to 10 -- time to limit in min, this is cumulative between all application
set alert1 to 5 -- time when to give a warning (great for giving a 5 min warning so they know they should save and wrap up what they are doing)
## Alert Settings ##
set alertme to false
set bypassattempts to 0
set maxbypassattemtps to 3 -- If the kid trys to reopen application after timelimit has expired alert you
## Bypass/Extention Settings ## -- If you would like to give the kid an extesion or bypass the block
set allowbypass to false
set pass1 to ""
set timelimit to timelimit * 60 -- Make into a seconds
set alert1 to alert1 * 60
set timelimits to timelimit
on is_running(appName)
tell application "System Events" to (name of processes) contains appName
end is_running
on checkapps()
set x to false
repeat with a from 1 to length of applist
set b to item a of applist
if is_running(b) then
set x to true
end if
end repeat
return x
end checkapps
on killall()
tell application "System Events"
repeat with myProcess in applist
set theID to (unix id of processes whose name is myProcess)
try
do shell script "kill -9 " & theID
end try
end repeat
end tell
end killall
on logme(msg)
set time1 to do shell script "date"
do shell script "echo \"" & msg & " " & time1 & "\" >> ~/Library/Logs/Time_Limit.log"
end logme
on checkday()
if day of (current date) is not equal to day1 then
set timelimit to timelimit + timelimits
set day1 to day of (current date)
end if
end checkday
logme("Begin Timer with Apps List: " & (applist as string))
set day1 to day of (current date)
repeat while 1 = 1
checkday()
if checkapps() then
if timelimit > 0 then
set timelimit to timelimit - 1
if timelimit is alert1 then
logme("Time Left:" & (timelimit as string) & "Displaying alert")
display notification "Please finsh what you are doing and save your work" with title "Time Limit Almost Up" subtitle ((timelimit * 60) & " Minitues remaing") as string
end if
else
(*
tell application app1
quit
end tell
delay 20
*)
if checkapps() then
killall()
logme("App Runnning after Limit, Killing")
end if
end if
end if
delay 1
end repeat
0 votos
Interesante solución aquí ask.metafilter.com/243437/ . Básicamente, crea una nueva cuenta sólo con esa aplicación y utiliza el control parental para limitar el tiempo en esa cuenta. Cuando su hijo quiera utilizar la aplicación, deberá acceder a esa cuenta.
0 votos
Además, ¿en qué grado necesitas que esté la seguridad? Yo tengo algunas soluciones en el mío, pero son fácilmente evitables con algunos conocimientos informáticos. Dudo que tu(s) hijo(s) sea(n) capaz(s) de burlarla(s) (dependiendo de su edad) pero me gustaría asegurarme.
0 votos
Por último, ¿cuántos partidos? Si son más de uno, ¿necesitas tiempos diferentes para cada uno, el mismo tiempo para cada uno, o un temporizador acumulativo?