gpt4 book ai didi

java - NoClassDefFoundError: com.parse.ParseObject$1

转载 作者:行者123 更新时间:2023-11-30 10:51:13 26 4
gpt4 key购买 nike

我在 Android 4.4、4.3 和 4.2 上遇到了 NoClassDefFoundError。我整天都在尝试修复它,但无济于事。我试过更改 targetSdkVersion、Parse 版本、使用 jar 而不是 Gradle 导入 Parse 库,以及清理和重建项目。一切都适用于 Android 5.0 及更高版本。

我正在使用 Parse 版本 1.12.0

CompileSdkVersion 23

构建工具版本 23.0.2

minSdkVersion 17

targetSdkVersion 23

这是我的堆栈跟踪。它在第一次尝试注册 ParseObject 的子类时崩溃。

          01-13 12:18:26.500 1347-1347/? E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.NoClassDefFoundError: com.parse.ParseObject$1
at com.parse.ParseObject.<clinit>(ParseObject.java:316)
at com.company.myapp.utils.Application.onCreate(PensterApplication.java:36)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1007)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4444)
at android.app.ActivityThread.access$1300(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1316)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5103)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)

这是崩溃的 Application 类。我已经更改了类名以在此处在线发布

  public class myApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
FacebookSdk.sdkInitialize(this);

// Enable Local Datastore.
Parse.enableLocalDatastore(this);

// Parse classes that need registering
ParseObject.registerSubclass(aaa.class); //error happens here
ParseObject.registerSubclass(bbb.class);
ParseObject.registerSubclass(ccc.class);
ParseObject.registerSubclass(ddd.class);
ParseObject.registerSubclass(eee.class);
ParseObject.registerSubclass(fff.class);
ParseObject.registerSubclass(ggg.class);
ParseObject.registerSubclass(hhh.class);
ParseObject.registerSubclass(iii.class);
ParseObject.registerSubclass(jjj.class);
Parse.initialize(this, PARSE_APPLICATION_ID, PARSE_CLIENT_KEY);

//set a default acl so that default is not public read.write
if (ParseUser.getCurrentUser() != null) {
ParseACL defaultACL = new ParseACL(ParseUser.getCurrentUser());
defaultACL.setPublicReadAccess(false);
defaultACL.setPublicWriteAccess(false);
ParseACL.setDefaultACL(defaultACL, true);
}

// Save this installation
ParseInstallation.getCurrentInstallation().saveInBackground();
ParseFacebookUtils.initialize(this);
ParseTwitterUtils.initialize(TWITTER_CONSUMER_KEY, TWITTER_CONSUMER_SECRET);

}
}

如果知道出了什么问题,我们将不胜感激。

最佳答案

我从友好的解析人员那里得到了他们 github 存储库上的一些帮助。

我的问题: https://github.com/ParsePlatform/Parse-SDK-Android/issues/342

我的问题中引用的问题: https://github.com/ParsePlatform/Parse-SDK-Android/issues/213

引用问题中引用的堆栈溢出问题。 (这就是帮助我解决问题的原因。) Crash: java.lang.NoClassDefFoundError: android.support.v7.appcompat.R$layout

原来这是 multidex 的问题。我需要扩展 MultiDexApplication 而不是 Application。我还在混淆器规则中添加了一些内容。

关于java - NoClassDefFoundError: com.parse.ParseObject$1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34779403/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com