From 01beaf7b37dadfa5df001579c6c719c291b511ff Mon Sep 17 00:00:00 2001 From: hyb1996 <946994919@qq.com> Date: Wed, 11 Jul 2018 17:09:21 +0800 Subject: [PATCH] fix: Version: 404 Android: 19 java.lang.NoClassDefFoundError: android/os/PersistableBundle at java.lang.Class.getDeclaredMethods(Native Method) at java.lang.Class.getPublicMethodsRecursive(Class.java:894) at java.lang.Class.getMethods(Class.java:877) at org.mozilla.javascript.JavaMembers.discoverAccessibleMethods(JavaMembers.java:346) at org.mozilla.javascript.JavaMembers.discoverAccessibleMethods(JavaMembers.java:302) at org.mozilla.javascript.JavaMembers.reflect(JavaMembers.java:419) at org.mozilla.javascript.JavaMembers.(JavaMembers.java:43) at org.mozilla.javascript.JavaMembers.lookupClass(JavaMembers.java:807) at org.mozilla.javascript.NativeJavaObject.initMembers(NativeJavaObject.java:54) at org.mozilla.javascript.NativeJavaObject.(NativeJavaObject.java:44) at org.mozilla.javascript.NativeJavaObject.(NativeJavaObject.java:34) at org.mozilla.javascript.WrapFactory.wrapAsJavaObject(WrapFactory.java:115) at org.mozilla.javascript.WrapFactory.wrap(WrapFactory.java:72) at com.stardust.autojs.engine.RhinoJavaScriptEngine$WrapFactory.wrap(RhinoJavaScriptEngine.java:178) at org.mozilla.javascript.Context.javaToJS(Context.java:1838) at com.stardust.autojs.engine.RhinoJavaScriptEngine.put(RhinoJavaScriptEngine.java:64) at com.stardust.autojs.execution.ScriptExecuteActivity.prepare(ScriptExecuteActivity.java:126) at com.stardust.autojs.execution.ScriptExecuteActivity.runScript(ScriptExecuteActivity.java:96) at com.stardust.autojs.execution.ScriptExecuteActivity.onCreate(ScriptExecuteActivity.java:75) at android.app.Activity.performCreate(Activity.java:5397) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1113) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245) at android.app.ActivityThread.access$800(ActivityThread.java:135) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:136) at android.app.ActivityThread.main(ActivityThread.java:5021) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:515) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:827) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:643) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.ClassNotFoundException: Didn't find class "android.os.PersistableBundle" on path: DexPathList[[zip file "/data/app/org.autojs.autojs-1.apk", zip file "/data/data/org.autojs.autojs/code_cache/secondary-dexes/org.autojs.autojs-1.apk.classes2.zip"],nativeLibraryDirectories=[/data/app-lib/org.autojs.autojs-1, /system/lib, /system/lib/arm, /data/downloads]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) at java.lang.ClassLoader.loadClass(ClassLoader.java:497) at java.lang.ClassLoader.loadClass(ClassLoader.java:457) ... 33 more --- .../stardust/autojs/execution/ScriptExecuteActivity.java | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/autojs/src/main/java/com/stardust/autojs/execution/ScriptExecuteActivity.java b/autojs/src/main/java/com/stardust/autojs/execution/ScriptExecuteActivity.java index b431c153..3d742ae4 100644 --- a/autojs/src/main/java/com/stardust/autojs/execution/ScriptExecuteActivity.java +++ b/autojs/src/main/java/com/stardust/autojs/execution/ScriptExecuteActivity.java @@ -4,7 +4,6 @@ import android.app.Activity; import android.content.Context; import android.content.Intent; import android.os.Bundle; -import android.os.PersistableBundle; import android.support.annotation.Nullable; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; @@ -15,7 +14,6 @@ import android.view.MotionEvent; import com.stardust.autojs.core.eventloop.EventEmitter; import com.stardust.autojs.core.eventloop.SimpleEvent; -import com.stardust.autojs.core.ui.inflater.inflaters.Exceptions; import com.stardust.autojs.engine.JavaScriptEngine; import com.stardust.autojs.engine.LoopBasedJavaScriptEngine; import com.stardust.autojs.engine.ScriptEngine; @@ -157,6 +155,7 @@ public class ScriptExecuteActivity extends AppCompatActivity { return; IntentExtras extras = IntentExtras.newExtras().putAll(mIntentExtras); outState.putInt(IntentExtras.EXTRA_ID, extras.getId()); + emit("save_instance_state", outState); } @Override @@ -191,12 +190,6 @@ public class ScriptExecuteActivity extends AppCompatActivity { emit("restore_instance_state", savedInstanceState); } - @Override - public void onSaveInstanceState(Bundle outState, PersistableBundle outPersistentState) { - super.onSaveInstanceState(outState, outPersistentState); - emit("save_instance_state", outState, outPersistentState); - } - @Override public boolean onKeyDown(int keyCode, KeyEvent event) { SimpleEvent e = new SimpleEvent();