2016-07-01 4 views
1

私のアプリケーションで高得点のデータベースとしてレルムを使用しようとしています。しかし、このコード行が呼び出された:私は、ユーザーのスコアを保存しようとしている断片でレルムRealmConfigurationを構築しようとすると、アプリケーションがクラッシュする

realmConfig = new RealmConfiguration.Builder(getActivity().getApplicationContext()).build(); 

、私はこの取得:

FATAL EXCEPTION: main 
Process: com.tommy.mastersproject, PID: 21387 
Theme: themes:{com.android.settings=overlay:com.cyngn.hexo, default=overlay:system, iconPack:system, fontPkg:system, com.android.systemui=overlay:system, com.android.systemui.navbar=overlay:system} 
java.lang.NoClassDefFoundError: Failed resolution of: Lio/realm/RealmConfiguration$Builder; 
at com.tommy.mastersproject.fragments.MemoryRecallFragment.onCreate(MemoryRecallFragment.java:144) 
at android.support.v4.app.Fragment.performCreate(Fragment.java:1951) 
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1029) 
at android.support.v4.app.BackStackRecord.setLastIn(BackStackRecord.java:779) 
at android.support.v4.app.BackStackRecord.calculateFragments(BackStackRecord.java:802) 
at android.support.v4.app.BackStackRecord.run(BackStackRecord.java:660) 
at android.support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1617) 
at android.support.v4.app.FragmentController.execPendingActions(FragmentController.java:339) 
at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:601) 
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1238) 
at android.app.Activity.performStart(Activity.java:6268) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2413) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2510) 
at android.app.ActivityThread.-wrap11(ActivityThread.java) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1363) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:148) 
at android.app.ActivityThread.main(ActivityThread.java:5461) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
Caused by: java.lang.ClassNotFoundException: Didn't find class "io.realm.RealmConfiguration$Builder" on path: DexPathList[[dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-support-annotations-23.4.0_d80f4a0fc2ae8e1f7cf76e4c536a48795da28487-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-slice_9-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-slice_8-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-slice_7-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-slice_6-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-slice_5-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-slice_4-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-slice_3-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-slice_2-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-slice_1-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-slice_0-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-library-2.4.0_e0d22a6e7ea9a4d2326a0c8c16bbc09d4d04442c-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-internal_impl-23.4.0_bd67bdb6ef0c094e8f4157e2567e8b30b9d0dd7f-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-com.jakewharton-butterknife-8.0.1_9246a0d023a2de89ba20a84f0fb1ecc6b733b004-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-com.code-troopers.betterpickers-library-3.0.0_f98f8b23c6650d93d8479a647f8f2162db8834e8-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-com.astuetz-pagerslidingtabstrip-1.0.1_474986b4f5d06e547dc72e3bf0988a95fa9d3973-classes.dex", dex file "/data/data/com.tommy.mastersproject/files/instant-run/dex/slice-com.android.support-support-vector-dr 

を私はまた

を使用して試してみました
realm = Realm.getDefaultInstance(); 

ただし運がない。

RealmのAndroid Multidexとの互換性が低く、Gradleの最新版ではないという類似の苦情がありましたが、現在はGradle 2.1.2を実行中です。

答えて

4

私はGradle 2.1.2も使用していますが、Realmは問題なく動作しています。Instant Runで問題が発生する可能性があります。インスタント実行なしでプロジェクトをロードしようとしましたか?それを無効にしない場合は(Androidスタジオ - >環境設定 - >ビルド、実行、展開 - >インスタント実行)、プロジェクトをクリーンアップしてもう一度実行します。

RealmConfigurationを作成している領域とRealmを使用している実際のコードを共有してください。

+0

私はインスタント実行を使用していました。私はそれをオフに切り替えるあなたの提案に従って、今、アプリが動作します。私はそれがRealmが独自のGradleプラグインを作成することと関係があるのだろうかと思います。 – CiaranC94

+1

すごくうれしいよ、それはもっとインスタント・ランの問題だ。 Realm Gradleプラグインにはいくつかの問題がありましたが、最近のアップデートでは大きな問題が修正されています。 –

関連する問題