アプリのすべてのアクティビティでリリースapkがこのエラーログを取得しているとき
04-03 17:10:54.105 26527-26527/? I/AppCompatDelegate: Failed to instantiate custom view inflater Android.support.v7.app.AppCompatViewInflater. Falling back to default.
Java.lang.ClassNotFoundException: Android.support.v7.app.AppCompatViewInflater
at Java.lang.Class.classForName(Native Method)
at Java.lang.Class.forName(Class.Java:309)
at Java.lang.Class.forName(Class.Java:273)
at Android.support.v7.app.j.b(AppCompatDelegateImplV9.Java:1014)
at Android.support.v7.app.j.onCreateView(AppCompatDelegateImplV9.Java:1092)
at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:725)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:482)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:414)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:365)
at com.Android.internal.policy.impl.PhoneWindow.generateLayout(PhoneWindow.Java:3605)
at com.Android.internal.policy.impl.PhoneWindow.installDecor(PhoneWindow.Java:3677)
at com.Android.internal.policy.impl.PhoneWindow.getDecorView(PhoneWindow.Java:1943)
at Android.support.v7.app.j.x(AppCompatDelegateImplV9.Java:374)
at Android.support.v7.app.j.w(AppCompatDelegateImplV9.Java:323)
at Android.support.v7.app.j.b(AppCompatDelegateImplV9.Java:284)
at Android.support.v7.app.c.setContentView(AppCompatActivity.Java:139)
at com.myapp.example.MainActivity.I(MainActivity.Java:1523)
at com.myapp.example.MainActivity.onCreate(MainActivity.Java:358)
at Android.app.Activity.performCreate(Activity.Java:6010)
at Android.app.Instrumentation.callActivityOnCreate(Instrumentation.Java:1129)
at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2292)
at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2413)
at Android.app.ActivityThread.access$800(ActivityThread.Java:155)
at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1317)
at Android.os.Handler.dispatchMessage(Handler.Java:102)
at Android.os.Looper.loop(Looper.Java:135)
at Android.app.ActivityThread.main(ActivityThread.Java:5343)
at Java.lang.reflect.Method.invoke(Native Method)
at Java.lang.reflect.Method.invoke(Method.Java:372)
at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:905)
at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:700)
Caused by: Java.lang.ClassNotFoundException: Didn't find class "Android.support.v7.app.AppCompatViewInflater" on path: DexPathList[[Zip file "/data/app/com.myapp.example-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.Java:56)
at Java.lang.ClassLoader.loadClass(ClassLoader.Java:511)
at Java.lang.ClassLoader.loadClass(ClassLoader.Java:469)
at Java.lang.Class.classForName(Native Method)
at Java.lang.Class.forName(Class.Java:309)
at Java.lang.Class.forName(Class.Java:273)
at Android.support.v7.app.j.b(AppCompatDelegateImplV9.Java:1014)
at Android.support.v7.app.j.onCreateView(AppCompatDelegateImplV9.Java:1092)
at Android.view.LayoutInflater.createViewFromTag(LayoutInflater.Java:725)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:482)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:414)
at Android.view.LayoutInflater.inflate(LayoutInflater.Java:365)
at com.Android.internal.policy.impl.PhoneWindow.generateLayout(PhoneWindow.Java:3605)
at com.Android.internal.policy.impl.PhoneWindow.installDecor(PhoneWindow.Java:3677)
at com.Android.internal.policy.impl.PhoneWindow.getDecorView(PhoneWindow.Java:1943)
at Android.support.v7.app.j.x(AppCompatDelegateImplV9.Java:374)
at Android.support.v7.app.j.w(AppCompatDelegateImplV9.Java:323)
at Android.support.v7.app.j.b(AppCompatDelegateImplV9.Java:284)
at Android.support.v7.app.c.setContentView(AppCompatActivity.Java:139)
at com.myapp.example.MainActivity.I(MainActivity.Java:1523)
at com.myapp.example.MainActivity.onCreate(MainActivity.Java:358)
at Android.app.Activity.performCreate(Activity.Java:6010)
at Android.app.Instrumentation.callActivityOnCreate(Instrumentation.Java:1129)
at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2292)
at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2413)
at Android.app.ActivityThread.access$800(ActivityThread.Java:155)
at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1317)
at Android.os.Handler.dispatchMessage(Handler.Java:102)
at Android.os.Looper.loop(Looper.Java:135)
at Android.app.ActivityThread.main(ActivityThread.Java:5343)
at Java.lang.reflect.Method.invoke(Native Method)
at Java.lang.reflect.Method.invoke(Method.Java:372)
at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:905)
at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:700)
Suppressed: Java.lang.ClassNotFoundException: Android.support.v7.app.AppCompatViewInflater
at Java.lang.Class.classForName(Native Method)
at Java.lang.BootClassLoader.findClass(ClassLoader.Java:781)
at Java.lang.BootClassLoader.loadClass(ClassLoader.Java:841)
at Java.lang.ClassLoader.loadClass(ClassLoader.Java:504)
... 32 more
Caused by: Java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
App Gradleの設定を以下に示します。
注:このエラーはリリースビルドでのみ発生し、デバッグビルドでは発生しません。
ありがとうございました。
プロガードルールを書く:
-dontwarn Android.support.v7.** -keep class Android.support.v7.** { *; } -keep interface Android.support.v7.** { *; }
これはappcompat-v7
27.1.0
のバグのようです: https://issuetracker.google.com/issues/74289571
2018年3月27日07:49 AM
開発チームが報告された問題を修正しました。今後のビルドで利用可能になります。
サポートライブラリの新しいバージョンに更新するか(この修正が既にリリースされている場合)、このバグが存在しない以前のバージョンにダウングレードすることができます:27.0.2
。
compileSdkVersion
、buildToolsVersion
、targetSdkVersion
、およびsupport library
には同じバージョンを使用する必要があります。したがって、バージョン27を使用する必要があります。
compileSdkVersion 27
buildToolsVersion "27.0.3"
targetSdkVersion 27
support_library_version = '27 .1.0 '
27.1.1で修正されたと思います。
compileSdkVersion 27
buildToolsVersion '27.0.3'
implementation 'com.Android.support:appcompat-v7:27.1.1'
implementation 'com.Android.support:design:27.1.1'
implementation 'com.Android.support:support-v4:27.1.1'
implementation 'com.Android.support.constraint:constraint-layout:1.1.0'
implementation 'com.Android.support:cardview-v7:27.1.1'