just to save works and use another computer to code
This commit is contained in:
@@ -1,5 +1,8 @@
|
||||
package com.stardust.scriptdroid;
|
||||
|
||||
import android.app.AlarmManager;
|
||||
import android.app.PendingIntent;
|
||||
import android.content.Intent;
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.net.Uri;
|
||||
@@ -17,6 +20,7 @@ import com.stardust.scriptdroid.autojs.AutoJs;
|
||||
import com.stardust.scriptdroid.autojs.key.GlobalKeyObserver;
|
||||
import com.stardust.scriptdroid.autojs.record.GlobalRecorder;
|
||||
import com.stardust.scriptdroid.network.GlideApp;
|
||||
import com.stardust.scriptdroid.timing.TaskSchedulerReceiver;
|
||||
import com.stardust.scriptdroid.tool.CrashHandler;
|
||||
import com.stardust.scriptdroid.tool.JsBeautifierFactory;
|
||||
import com.stardust.scriptdroid.ui.error.ErrorReportActivity;
|
||||
@@ -74,7 +78,7 @@ public class App extends MultiDexApplication {
|
||||
GlobalKeyObserver.getSingleton();
|
||||
GlobalRecorder.initSingleton(this);
|
||||
setupDrawableImageLoader();
|
||||
|
||||
TaskSchedulerReceiver.setupRepeating(this);
|
||||
}
|
||||
|
||||
private void setupDrawableImageLoader() {
|
||||
|
||||
@@ -18,6 +18,6 @@ public class ScriptExecutionIntentService extends IntentService {
|
||||
protected void onHandleIntent(@Nullable Intent intent) {
|
||||
if (intent == null)
|
||||
return;
|
||||
CommonUtils.handleIntent(this, intent);
|
||||
ScriptIntents.handleIntent(this, intent);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,12 +4,14 @@ import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
|
||||
import com.stardust.autojs.execution.ExecutionConfig;
|
||||
import com.stardust.autojs.script.JavaScriptFileSource;
|
||||
import com.stardust.autojs.script.ScriptSource;
|
||||
import com.stardust.autojs.script.SequenceScriptSource;
|
||||
import com.stardust.autojs.script.StringScriptSource;
|
||||
import com.stardust.scriptdroid.autojs.AutoJs;
|
||||
import com.stardust.scriptdroid.io.StorageFileProvider;
|
||||
import com.stardust.scriptdroid.model.script.PathChecker;
|
||||
import com.stardust.scriptdroid.model.script.Scripts;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
@@ -17,21 +19,27 @@ import java.io.File;
|
||||
* Created by Stardust on 2017/4/1.
|
||||
*/
|
||||
|
||||
public class CommonUtils {
|
||||
public class ScriptIntents {
|
||||
|
||||
public static final String EXTRA_KEY_PATH = "path";
|
||||
|
||||
public static final String EXTRA_KEY_PRE_EXECUTE_SCRIPT = "script";
|
||||
public static final String EXTRA_KEY_LOOP_TIMES = "loop";
|
||||
public static final String EXTRA_KEY_LOOP_INTERVAL = "interval";
|
||||
public static final String EXTRA_KEY_DELAY = "delay";
|
||||
|
||||
|
||||
public static boolean isTaskerBundleValid(Bundle bundle) {
|
||||
return bundle.containsKey(CommonUtils.EXTRA_KEY_PATH) || bundle.containsKey(EXTRA_KEY_PRE_EXECUTE_SCRIPT);
|
||||
return bundle.containsKey(ScriptIntents.EXTRA_KEY_PATH) || bundle.containsKey(EXTRA_KEY_PRE_EXECUTE_SCRIPT);
|
||||
}
|
||||
|
||||
public static void handleIntent(Context context, Intent intent) {
|
||||
public static boolean handleIntent(Context context, Intent intent) {
|
||||
String path = getPath(intent);
|
||||
String directoryPath = null;
|
||||
String script = intent.getStringExtra(CommonUtils.EXTRA_KEY_PRE_EXECUTE_SCRIPT);
|
||||
String script = intent.getStringExtra(ScriptIntents.EXTRA_KEY_PRE_EXECUTE_SCRIPT);
|
||||
int loopTimes = intent.getIntExtra(EXTRA_KEY_LOOP_TIMES, 1);
|
||||
long delay = intent.getLongExtra(EXTRA_KEY_DELAY, 0);
|
||||
long interval = intent.getLongExtra(EXTRA_KEY_LOOP_INTERVAL, 0);
|
||||
ScriptSource source = null;
|
||||
ExecutionConfig config = new ExecutionConfig().loop(delay, loopTimes, interval);
|
||||
if (path == null && script != null) {
|
||||
source = new StringScriptSource(script);
|
||||
} else if (path != null && new PathChecker(context).checkAndToastError(path)) {
|
||||
@@ -41,19 +49,20 @@ public class CommonUtils {
|
||||
} else {
|
||||
source = fileScriptSource;
|
||||
}
|
||||
directoryPath = new File(path).getParent();
|
||||
config.path(new File(path).getParent(), StorageFileProvider.DEFAULT_DIRECTORY_PATH);
|
||||
} else {
|
||||
config.path(StorageFileProvider.DEFAULT_DIRECTORY_PATH);
|
||||
}
|
||||
if (source != null) {
|
||||
if (directoryPath == null)
|
||||
Scripts.run(source);
|
||||
else
|
||||
Scripts.run(source, directoryPath);
|
||||
if (source == null) {
|
||||
return false;
|
||||
}
|
||||
AutoJs.getInstance().getScriptEngineService().execute(source, config);
|
||||
return true;
|
||||
}
|
||||
|
||||
private static String getPath(Intent intent) {
|
||||
if (intent.getData() != null && intent.getData().getPath() != null)
|
||||
return intent.getData().getPath();
|
||||
return intent.getStringExtra(CommonUtils.EXTRA_KEY_PATH);
|
||||
return intent.getStringExtra(ScriptIntents.EXTRA_KEY_PATH);
|
||||
}
|
||||
}
|
||||
@@ -5,17 +5,13 @@ import android.content.Intent;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.text.TextUtils;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.stardust.autojs.script.StringScriptSource;
|
||||
import com.stardust.pio.PFile;
|
||||
import com.stardust.pio.PFiles;
|
||||
import com.stardust.scriptdroid.external.CommonUtils;
|
||||
import com.stardust.scriptdroid.external.ScriptIntents;
|
||||
import com.stardust.scriptdroid.R;
|
||||
import com.stardust.scriptdroid.model.script.ScriptFile;
|
||||
import com.stardust.scriptdroid.model.script.Scripts;
|
||||
import com.stardust.scriptdroid.ui.common.ScriptOperations;
|
||||
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.InputStream;
|
||||
@@ -44,7 +40,7 @@ public class RunIntentActivity extends Activity {
|
||||
InputStream stream = getContentResolver().openInputStream(uri);
|
||||
Scripts.run(new StringScriptSource(PFiles.read(stream)));
|
||||
} else {
|
||||
CommonUtils.handleIntent(this, intent);
|
||||
ScriptIntents.handleIntent(this, intent);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ import android.os.Bundle;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.stardust.scriptdroid.model.script.PathChecker;
|
||||
import com.stardust.scriptdroid.external.CommonUtils;
|
||||
import com.stardust.scriptdroid.external.ScriptIntents;
|
||||
import com.stardust.scriptdroid.model.script.ScriptFile;
|
||||
import com.stardust.scriptdroid.model.script.Scripts;
|
||||
|
||||
@@ -17,7 +17,7 @@ public class ShortcutActivity extends Activity {
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
final String path = getIntent().getStringExtra(CommonUtils.EXTRA_KEY_PATH);
|
||||
final String path = getIntent().getStringExtra(ScriptIntents.EXTRA_KEY_PATH);
|
||||
if (new PathChecker(this).checkAndToastError(path)) {
|
||||
runScriptFile(path);
|
||||
}
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package com.stardust.scriptdroid.external.shortcut;
|
||||
|
||||
import android.app.PendingIntent;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.pm.ShortcutInfo;
|
||||
@@ -8,8 +7,6 @@ import android.graphics.drawable.Icon;
|
||||
import android.os.Build;
|
||||
import android.support.annotation.RequiresApi;
|
||||
|
||||
import com.stardust.scriptdroid.external.CommonUtils;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@@ -5,9 +5,7 @@ import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.NonNull;
|
||||
|
||||
import com.stardust.scriptdroid.App;
|
||||
import com.stardust.scriptdroid.external.CommonUtils;
|
||||
import com.stardust.scriptdroid.external.ScriptExecutionIntentService;
|
||||
import com.stardust.scriptdroid.external.ScriptIntents;
|
||||
import com.stardust.scriptdroid.external.open.RunIntentActivity;
|
||||
import com.twofortyfouram.locale.sdk.client.receiver.AbstractPluginSettingReceiver;
|
||||
|
||||
@@ -21,7 +19,7 @@ public class FireSettingReceiver extends AbstractPluginSettingReceiver {
|
||||
|
||||
@Override
|
||||
protected boolean isBundleValid(@NonNull Bundle bundle) {
|
||||
return CommonUtils.isTaskerBundleValid(bundle);
|
||||
return ScriptIntents.isTaskerBundleValid(bundle);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -9,7 +9,7 @@ import android.view.Menu;
|
||||
import android.view.MenuItem;
|
||||
|
||||
import com.stardust.scriptdroid.R;
|
||||
import com.stardust.scriptdroid.external.CommonUtils;
|
||||
import com.stardust.scriptdroid.external.ScriptIntents;
|
||||
import com.stardust.scriptdroid.model.script.ScriptFile;
|
||||
import com.stardust.scriptdroid.io.StorageFileProvider;
|
||||
import com.stardust.scriptdroid.ui.BaseActivity;
|
||||
@@ -79,30 +79,30 @@ public class TaskPrefEditActivity extends AbstractAppCompatPluginActivity {
|
||||
|
||||
@Override
|
||||
public boolean isBundleValid(@NonNull Bundle bundle) {
|
||||
return CommonUtils.isTaskerBundleValid(bundle);
|
||||
return ScriptIntents.isTaskerBundleValid(bundle);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPostCreateWithPreviousResult(@NonNull Bundle bundle, @NonNull String s) {
|
||||
mSelectedScriptFilePath = bundle.getString(CommonUtils.EXTRA_KEY_PATH);
|
||||
mPreExecuteScript = bundle.getString(CommonUtils.EXTRA_KEY_PRE_EXECUTE_SCRIPT);
|
||||
mSelectedScriptFilePath = bundle.getString(ScriptIntents.EXTRA_KEY_PATH);
|
||||
mPreExecuteScript = bundle.getString(ScriptIntents.EXTRA_KEY_PRE_EXECUTE_SCRIPT);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public Bundle getResultBundle() {
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putString(CommonUtils.EXTRA_KEY_PATH, mSelectedScriptFilePath);
|
||||
bundle.putString(CommonUtils.EXTRA_KEY_PRE_EXECUTE_SCRIPT, mPreExecuteScript);
|
||||
bundle.putString(ScriptIntents.EXTRA_KEY_PATH, mSelectedScriptFilePath);
|
||||
bundle.putString(ScriptIntents.EXTRA_KEY_PRE_EXECUTE_SCRIPT, mPreExecuteScript);
|
||||
return bundle;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@Override
|
||||
public String getResultBlurb(@NonNull Bundle bundle) {
|
||||
String blurb = bundle.getString(CommonUtils.EXTRA_KEY_PATH);
|
||||
String blurb = bundle.getString(ScriptIntents.EXTRA_KEY_PATH);
|
||||
if (TextUtils.isEmpty(blurb)) {
|
||||
blurb = bundle.getString(CommonUtils.EXTRA_KEY_PRE_EXECUTE_SCRIPT);
|
||||
blurb = bundle.getString(ScriptIntents.EXTRA_KEY_PRE_EXECUTE_SCRIPT);
|
||||
}
|
||||
if (TextUtils.isEmpty(blurb)) {
|
||||
blurb = getString(R.string.text_path_is_empty);
|
||||
|
||||
@@ -11,7 +11,7 @@ import android.widget.RemoteViews;
|
||||
|
||||
import com.stardust.pio.PFiles;
|
||||
import com.stardust.scriptdroid.R;
|
||||
import com.stardust.scriptdroid.external.CommonUtils;
|
||||
import com.stardust.scriptdroid.external.ScriptIntents;
|
||||
import com.stardust.scriptdroid.external.open.RunIntentActivity;
|
||||
|
||||
import java.util.HashSet;
|
||||
@@ -48,7 +48,7 @@ public class ScriptWidget extends AppWidgetProvider {
|
||||
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_script_shortcut);
|
||||
views.setOnClickPendingIntent(R.id.widget, PendingIntent.getActivity(context, requestCode,
|
||||
new Intent(context, RunIntentActivity.class)
|
||||
.putExtra(CommonUtils.EXTRA_KEY_PATH, path)
|
||||
.putExtra(ScriptIntents.EXTRA_KEY_PATH, path)
|
||||
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK), PendingIntent.FLAG_UPDATE_CURRENT));
|
||||
views.setTextViewText(R.id.name, name);
|
||||
appWidgetManager.updateAppWidget(widgetId, views);
|
||||
|
||||
@@ -13,7 +13,7 @@ import com.stardust.autojs.script.ScriptSource;
|
||||
import com.stardust.scriptdroid.App;
|
||||
import com.stardust.scriptdroid.R;
|
||||
import com.stardust.scriptdroid.autojs.AutoJs;
|
||||
import com.stardust.scriptdroid.external.CommonUtils;
|
||||
import com.stardust.scriptdroid.external.ScriptIntents;
|
||||
import com.stardust.scriptdroid.external.shortcut.Shortcut;
|
||||
import com.stardust.scriptdroid.external.shortcut.ShortcutActivity;
|
||||
import com.stardust.scriptdroid.io.StorageFileProvider;
|
||||
@@ -77,7 +77,7 @@ public class Scripts {
|
||||
new Shortcut(App.getApp()).name(scriptFile.getSimplifiedName())
|
||||
.targetClass(ShortcutActivity.class)
|
||||
.iconRes(R.drawable.ic_node_js_black)
|
||||
.extras(new Intent().putExtra(CommonUtils.EXTRA_KEY_PATH, scriptFile.getPath()))
|
||||
.extras(new Intent().putExtra(ScriptIntents.EXTRA_KEY_PATH, scriptFile.getPath()))
|
||||
.send();
|
||||
}
|
||||
|
||||
@@ -133,4 +133,12 @@ public class Scripts {
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static void send(ScriptFile file) {
|
||||
Uri uri = Uri.parse("file://" + file.getPath());
|
||||
App.getApp().startActivity(new Intent(Intent.ACTION_SEND)
|
||||
.setDataAndType(uri, "text/plain")
|
||||
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
package com.stardust.scriptdroid.timing;
|
||||
|
||||
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
|
||||
import com.stardust.scriptdroid.external.ScriptIntents;
|
||||
|
||||
/**
|
||||
* Created by Stardust on 2017/11/27.
|
||||
*/
|
||||
|
||||
public class TaskReceiver extends BroadcastReceiver {
|
||||
|
||||
public static final String ACTION_TASK = "com.stardust.autojs.action.task";
|
||||
public static final String EXTRA_TASK_ID = "task_id";
|
||||
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
ScriptIntents.handleIntent(context, intent);
|
||||
int id = intent.getIntExtra(EXTRA_TASK_ID, -1);
|
||||
if (id >= 0) {
|
||||
TimedTaskManager.getInstance().notifyTaskFinished(id);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package com.stardust.scriptdroid.timing;
|
||||
|
||||
import android.app.AlarmManager;
|
||||
import android.app.PendingIntent;
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.Build;
|
||||
import android.util.Log;
|
||||
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||||
import io.reactivex.schedulers.Schedulers;
|
||||
|
||||
|
||||
/**
|
||||
* Created by Stardust on 2017/11/27.
|
||||
*/
|
||||
|
||||
public class TaskSchedulerReceiver extends BroadcastReceiver {
|
||||
|
||||
public static final String ACTION_CHECK_TASK = "com.stardust.autojs.action.check_task";
|
||||
private static final String LOG_TAG = "TaskSchedulerReceiver";
|
||||
private static final int REQUEST_CODE = 4056;
|
||||
private static final long INTERVAL = 60 * 1000;
|
||||
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
Log.d(LOG_TAG, "onReceive");
|
||||
checkTasks(context);
|
||||
}
|
||||
|
||||
public static void checkTasks(Context context) {
|
||||
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
|
||||
TimedTaskManager.getInstance().getFutureTasksInMillis(TimeUnit.HOURS.toMillis(1))
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe(timedTask -> scheduleTask(context, alarmManager, timedTask));
|
||||
}
|
||||
|
||||
private static void scheduleTask(Context context, AlarmManager alarmManager, TimedTask timedTask) {
|
||||
long millis = timedTask.getNextTime();
|
||||
PendingIntent op = PendingIntent.getBroadcast(context, REQUEST_CODE + 1 + timedTask.getId(),
|
||||
timedTask.createIntent().setAction(TaskReceiver.ACTION_TASK),
|
||||
PendingIntent.FLAG_UPDATE_CURRENT);
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
|
||||
alarmManager.setExact(AlarmManager.RTC_WAKEUP, millis, op);
|
||||
} else {
|
||||
alarmManager.set(AlarmManager.RTC_WAKEUP, millis, op);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static void setupRepeating(Context context) {
|
||||
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
|
||||
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + 5000,
|
||||
INTERVAL, PendingIntent.getBroadcast(context, REQUEST_CODE,
|
||||
new Intent(TaskSchedulerReceiver.ACTION_CHECK_TASK), PendingIntent.FLAG_UPDATE_CURRENT));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
package com.stardust.scriptdroid.timing;
|
||||
|
||||
import android.content.Intent;
|
||||
|
||||
|
||||
/**
|
||||
* Created by Stardust on 2017/11/27.
|
||||
*/
|
||||
|
||||
public class TimedTask {
|
||||
|
||||
int mId;
|
||||
|
||||
boolean mDisposable;
|
||||
|
||||
boolean mScheduled;
|
||||
|
||||
public boolean isDisposable() {
|
||||
return mDisposable;
|
||||
}
|
||||
|
||||
public void setDisposable(boolean disposable) {
|
||||
mDisposable = disposable;
|
||||
}
|
||||
|
||||
public boolean isScheduled() {
|
||||
return mScheduled;
|
||||
}
|
||||
|
||||
public void setScheduled(boolean scheduled) {
|
||||
mScheduled = scheduled;
|
||||
}
|
||||
|
||||
public long getNextTime() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int getId() {
|
||||
return mId;
|
||||
}
|
||||
|
||||
public Intent createIntent() {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
package com.stardust.scriptdroid.timing;
|
||||
|
||||
|
||||
import com.pushtorefresh.storio2.sqlite.StorIOSQLite;
|
||||
import com.pushtorefresh.storio2.sqlite.impl.DefaultStorIOSQLite;
|
||||
import com.pushtorefresh.storio2.sqlite.queries.Query;
|
||||
|
||||
import io.reactivex.Observable;
|
||||
|
||||
/**
|
||||
* Created by Stardust on 2017/11/27.
|
||||
*/
|
||||
|
||||
public class TimedTaskManager {
|
||||
|
||||
static final String TABLE_NAME = "timed_tasks";
|
||||
|
||||
private static TimedTaskManager sInstance = new TimedTaskManager();
|
||||
private StorIOSQLite mStorIOSQLite;
|
||||
|
||||
public static TimedTaskManager getInstance() {
|
||||
return sInstance;
|
||||
}
|
||||
|
||||
public TimedTaskManager() {
|
||||
/* mStorIOSQLite = DefaultStorIOSQLite.builder()
|
||||
.sqliteOpenHelper()
|
||||
.build();*/
|
||||
}
|
||||
|
||||
public void notifyTaskFinished(int id) {
|
||||
getTaskById(id).subscribe(timedTask -> {
|
||||
if (timedTask.isDisposable()) {
|
||||
removeTask(id);
|
||||
} else {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private Observable<TimedTask> getTaskById(int id) {
|
||||
return null;
|
||||
}
|
||||
|
||||
private void removeTask(int id) {
|
||||
}
|
||||
|
||||
|
||||
public Observable<TimedTask> getAllTasks() {
|
||||
return null;
|
||||
}
|
||||
|
||||
public Observable<TimedTask> getFutureTasksInMillis(long millis) {
|
||||
long current = System.currentTimeMillis();
|
||||
return getAllTasks().filter(timedTask ->
|
||||
timedTask.getNextTime() - current <= millis);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
package com.stardust.scriptdroid.timing;
|
||||
|
||||
import android.app.AlarmManager;
|
||||
import android.app.PendingIntent;
|
||||
import android.app.Service;
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.IntentFilter;
|
||||
import android.os.IBinder;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.util.Log;
|
||||
|
||||
/**
|
||||
* Created by Stardust on 2017/11/27.
|
||||
*/
|
||||
|
||||
public class TimedTaskService extends Service {
|
||||
|
||||
private static final int REQUEST_CODE_CHECK_TASK = 4056;
|
||||
|
||||
private AlarmManager mAlarmManager;
|
||||
|
||||
@Override
|
||||
public void onCreate() {
|
||||
super.onCreate();
|
||||
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public IBinder onBind(Intent intent) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDestroy() {
|
||||
super.onDestroy();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -306,6 +306,10 @@ public class ScriptOperations {
|
||||
.show();
|
||||
}
|
||||
|
||||
public void timedTask(ScriptFile scriptFile) {
|
||||
|
||||
}
|
||||
|
||||
|
||||
private class InputCallback implements MaterialDialog.InputCallback {
|
||||
|
||||
@@ -322,7 +326,7 @@ public class ScriptOperations {
|
||||
this(ext, null);
|
||||
}
|
||||
|
||||
public InputCallback() {
|
||||
InputCallback() {
|
||||
this(null);
|
||||
}
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ import com.stardust.scriptdroid.BuildConfig;
|
||||
import com.stardust.scriptdroid.Pref;
|
||||
import com.stardust.scriptdroid.R;
|
||||
import com.stardust.scriptdroid.autojs.AutoJs;
|
||||
import com.stardust.scriptdroid.ui.codegeneration.CodeGenerateDialog;
|
||||
import com.stardust.scriptdroid.timing.TimedTaskService;
|
||||
import com.stardust.scriptdroid.ui.common.NotAskAgainDialog;
|
||||
import com.stardust.scriptdroid.ui.doc.OnlineDocsFragment_;
|
||||
import com.stardust.scriptdroid.ui.floating.FloatyWindowManger;
|
||||
|
||||
@@ -234,6 +234,15 @@ public class ScriptListView extends SwipeRefreshLayout implements SwipeRefreshLa
|
||||
Scripts.openByOtherApps(mSelectedScriptFile);
|
||||
notifyOperated();
|
||||
break;
|
||||
case R.id.send:
|
||||
Scripts.send(mSelectedScriptFile);
|
||||
notifyOperated();
|
||||
break;
|
||||
case R.id.timed_task:
|
||||
new ScriptOperations(getContext(), this)
|
||||
.timedTask(mSelectedScriptFile);
|
||||
notifyOperated();
|
||||
break;
|
||||
case R.id.action_sort_by_date:
|
||||
sort(ScriptList.SORT_TYPE_DATE, mDirSortMenuShowing);
|
||||
break;
|
||||
|
||||
@@ -18,7 +18,7 @@ import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.stardust.scriptdroid.R;
|
||||
import com.stardust.scriptdroid.external.CommonUtils;
|
||||
import com.stardust.scriptdroid.external.ScriptIntents;
|
||||
import com.stardust.scriptdroid.external.shortcut.Shortcut;
|
||||
import com.stardust.scriptdroid.external.shortcut.ShortcutActivity;
|
||||
import com.stardust.scriptdroid.external.shortcut.ShortcutManager;
|
||||
@@ -100,7 +100,7 @@ public class ShortcutCreateActivity extends AppCompatActivity {
|
||||
}
|
||||
shortcut.name(mName.getText().toString())
|
||||
.targetClass(ShortcutActivity.class)
|
||||
.extras(new Intent().putExtra(CommonUtils.EXTRA_KEY_PATH, mScriptFile.getPath()))
|
||||
.extras(new Intent().putExtra(ScriptIntents.EXTRA_KEY_PATH, mScriptFile.getPath()))
|
||||
.send();
|
||||
}
|
||||
|
||||
@@ -114,10 +114,10 @@ public class ShortcutCreateActivity extends AppCompatActivity {
|
||||
icon = Icon.createWithBitmap(bitmap);
|
||||
}
|
||||
PersistableBundle extras = new PersistableBundle(1);
|
||||
extras.putString(CommonUtils.EXTRA_KEY_PATH, mScriptFile.getPath());
|
||||
extras.putString(ScriptIntents.EXTRA_KEY_PATH, mScriptFile.getPath());
|
||||
ShortcutManager.getInstance(this).addDynamicShortcut(mName.getText(), mScriptFile.getPath(), icon,
|
||||
new Intent(this, ShortcutActivity.class)
|
||||
.putExtra(CommonUtils.EXTRA_KEY_PATH, mScriptFile.getPath())
|
||||
.putExtra(ScriptIntents.EXTRA_KEY_PATH, mScriptFile.getPath())
|
||||
.setAction(Intent.ACTION_MAIN));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user