forked from TonyJiangWJ/AutoScriptBase
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
02d3386
commit 3f2f717
Showing
5 changed files
with
145 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
本脚本用于在不同的AutoJS软件之间备份和恢复定时任务 | ||
执行 备份所有的定时任务.js 会在当前文件夹下创建 tasks.json 保存当前AutoJS下的 定时任务(TimedTask)和意图任务(IntentTask) | ||
切换到需要重载的AutoJS下,执行 重载备份的定时任务.js 会读取当前文件夹下的tasks.js备份信息,并设置到当前的AutoJS软件下。 | ||
默认情况下重载会移除当前已经添加的定时任务,如果不想要自动移除 请将removeExists设为false。 | ||
使用场景: | ||
想要将免费版的AutoJS下的定时任务复制到Pro版。 | ||
1, 先打开免费版AutoJS,运行 备份所有的定时任务.js 此时会在文件夹下生成 tasks.json | ||
2, 打开AutoJS Pro,运行 重载备份的定时任务.js 此时会将 tasks.json 中的备份信息加载进来 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
/* | ||
* @Author: TonyJiangWJ | ||
* @Date: 2020-05-18 13:28:10 | ||
* @Last Modified by: TonyJiangWJ | ||
* @Last Modified time: 2020-08-27 13:31:59 | ||
* @Description: | ||
*/ | ||
let packageName = context.getPackageName() === 'org.autojs.autojsm' ? org.autojs.autojsm : org.autojs.autojs | ||
let isPro = context.getPackageName() === 'org.autojs.autojspro' | ||
let TimedTaskManager = packageName.timing.TimedTaskManager | ||
if (isPro) { | ||
packageName = com.stardust.autojs.core | ||
TimedTaskManager = packageName.timing.TimedTaskManager.Companion | ||
} | ||
let timedTasks = TimedTaskManager.getInstance().getAllTasksAsList() | ||
let intentTasks = TimedTaskManager.getInstance().getAllIntentTasksAsList() | ||
|
||
log('timedTasks: ' + JSON.stringify(timedTasks)) | ||
log('intentTasks: ' + JSON.stringify(intentTasks)) | ||
let tasks = { | ||
timedTasks: timedTasks, | ||
intentTasks: intentTasks | ||
} | ||
|
||
files.write(files.cwd() + "/tasks.json", JSON.stringify(tasks)) | ||
toast('done!') |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
/* | ||
* @Author: TonyJiangWJ | ||
* @Date: 2020-08-27 13:53:34 | ||
* @Last Modified by: TonyJiangWJ | ||
* @Last Modified time: 2020-08-27 13:54:21 | ||
* @Description: | ||
*/ | ||
let packageName = context.getPackageName() === 'org.autojs.autojsm' ? org.autojs.autojsm : org.autojs.autojs | ||
let isPro = context.getPackageName() === 'org.autojs.autojspro' | ||
let TimedTaskManager = packageName.timing.TimedTaskManager | ||
if (isPro) { | ||
packageName = com.stardust.autojs.core | ||
TimedTaskManager = packageName.timing.TimedTaskManager.Companion | ||
} | ||
let timedTasks = TimedTaskManager.getInstance().getAllTasksAsList() | ||
let intentTasks = TimedTaskManager.getInstance().getAllIntentTasksAsList() | ||
log('exist timedTasks: ' + JSON.stringify(timedTasks)) | ||
log('exist intentTasks: ' + JSON.stringify(intentTasks)) | ||
|
||
let taskManager = TimedTaskManager.getInstance() | ||
for (let i = 0; i < timedTasks.size(); i++) { | ||
let task = timedTasks.get(i) | ||
taskManager[isPro ? 'removeTaskSync' : 'removeTask'](task) | ||
} | ||
for (let i = 0; i < intentTasks.size(); i++) { | ||
let task = intentTasks.get(i) | ||
taskManager[isPro ? 'removeTaskSync' : 'removeTask'](task) | ||
} | ||
toastLog('done!') |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,77 @@ | ||
/* | ||
* @Author: TonyJiangWJ | ||
* @Date: 2020-05-18 13:28:10 | ||
* @Last Modified by: TonyJiangWJ | ||
* @Last Modified time: 2020-08-27 13:52:52 | ||
* @Description: | ||
*/ | ||
let packageName = context.getPackageName() === 'org.autojs.autojsm' ? org.autojs.autojsm : org.autojs.autojs | ||
let isPro = context.getPackageName() === 'org.autojs.autojspro' | ||
let TimedTaskManager = packageName.timing.TimedTaskManager | ||
if (isPro) { | ||
packageName = com.stardust.autojs.core | ||
TimedTaskManager = packageName.timing.TimedTaskManager.Companion | ||
} | ||
let timedTasks = TimedTaskManager.getInstance().getAllTasksAsList() | ||
let intentTasks = TimedTaskManager.getInstance().getAllIntentTasksAsList() | ||
log('exist timedTasks: ' + JSON.stringify(timedTasks)) | ||
log('exist intentTasks: ' + JSON.stringify(intentTasks)) | ||
|
||
let taskManager = TimedTaskManager.getInstance() | ||
let removeExists = true | ||
if (removeExists) { | ||
for (let i = 0; i < timedTasks.size(); i++) { | ||
let task = timedTasks.get(i) | ||
taskManager[isPro ? 'removeTaskSync' : 'removeTask'](task) | ||
} | ||
for (let i = 0; i < intentTasks.size(); i++) { | ||
let task = intentTasks.get(i) | ||
taskManager[isPro ? 'removeTaskSync' : 'removeTask'](task) | ||
} | ||
} | ||
|
||
let allTasks = JSON.parse(files.read(files.cwd() + "/tasks.json")) | ||
|
||
for (let i = 0; i < allTasks.timedTasks.length; i++) { | ||
let task = allTasks.timedTasks[i] | ||
taskManager[isPro ? 'addTaskSync' : 'addTask'](convertTimeTask(task)) | ||
} | ||
for (let i = 0; i < allTasks.intentTasks.length; i++) { | ||
let task = allTasks.intentTasks[i] | ||
taskManager[isPro ? 'addTaskSync' : 'addTask'](convertIntentTask(task)) | ||
} | ||
|
||
toast('done!') | ||
|
||
// | ||
function convertTimeTask(task) { | ||
let timedTask = new packageName.timing.TimedTask() | ||
if (task.scriptPath) { | ||
timedTask.setTimeFlag(task.timeFlag) | ||
timedTask.setDelay(task.delay) | ||
timedTask.setInterval(task.interval) | ||
timedTask.setLoopTimes(task.loopTimes) | ||
timedTask.setMillis(task.millis) | ||
timedTask.setScriptPath(task.scriptPath) | ||
timedTask.setScheduled(false) | ||
} else { | ||
timedTask.setTimeFlag(task.mTimeFlag) | ||
timedTask.setDelay(task.mDelay) | ||
timedTask.setInterval(task.mInterval) | ||
timedTask.setLoopTimes(task.mLoopTimes) | ||
timedTask.setMillis(task.mMillis) | ||
timedTask.setScriptPath(task.mScriptPath) | ||
timedTask.setScheduled(false) | ||
} | ||
return timedTask | ||
} | ||
|
||
function convertIntentTask(task) { | ||
let intentTask = new packageName.timing.IntentTask() | ||
intentTask.setScriptPath(task.mScriptPath) | ||
intentTask.setAction(task.mAction) | ||
intentTask.setCategory(task.mCategory) | ||
intentTask.setDataType(task.mDataType) | ||
intentTask.setLocal(task.mLocal) | ||
return intentTask | ||
} |