Firebase UI 运行时错误
Firebase UI Runtime Error
在我的项目中更新 firebase UI 和 firebase auth 的版本后,我遇到了一个奇怪的行为。错误显示“Error inflating class TextView”,这里是堆栈跟踪:
02-24 16:22:15.537 20983-20983/com.nikogalla.tripbook E/AndroidRuntime:
FATAL EXCEPTION: main
Process: com.nikogalla.tripbook, PID: 20983
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.nikogalla.tripbook/com.firebase.ui.auth.KickoffActivity}: android.view.InflateException: Binary XML file line #0: Binary XML file line #0: Error inflating class TextView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2891)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2969)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1658)
at android.os.Handler.dispatchMessage(Handler.java:108)
at android.os.Looper.loop(Looper.java:206)
at android.app.ActivityThread.main(ActivityThread.java:6733)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:845)
Caused by: android.view.InflateException: Binary XML file line #0: Binary XML file line #0: Error inflating class TextView
Caused by: android.view.InflateException: Binary XML file line #0: Error inflating class TextView
Caused by: java.lang.UnsupportedOperationException: Failed to resolve attribute at index 6: TypedValue{t=0x2/d=0x7f040075 a=4 r=0x7f06002d}
at android.content.res.TypedArray.getColorStateList(TypedArray.java:541)
at android.widget.TextView.<init>(TextView.java:913)
at android.widget.TextView.<init>(TextView.java:827)
at android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.java:76)
at android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.java:72)
at android.support.v7.app.AppCompatViewInflater.createView(AppCompatViewInflater.java:103)
at android.support.v7.app.AppCompatDelegateImplV9.createView(AppCompatDelegateImplV9.java:1016)
at android.support.v7.app.AppCompatDelegateImplV9.onCreateView(AppCompatDelegateImplV9.java:1073)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:772)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:730)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:863)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)
at android.view.LayoutInflater.inflate(LayoutInflater.java:515)
at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
at android.support.v7.app.AppCompatDelegateImplV9.createSubDecor(AppCompatDelegateImplV9.java:383)
at android.support.v7.app.AppCompatDelegateImplV9.ensureSubDecor(AppCompatDelegateImplV9.java:323)
at android.support.v7.app.AppCompatDelegateImplV9.onPostCreate(AppCompatDelegateImplV9.java:170)
at android.support.v7.app.AppCompatActivity.onPostCreate(AppCompatActivity.java:97)
at android.app.Instrumentation.callActivityOnPostCreate(Instrumentation.java:1284)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2873)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2969)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1658)
at android.os.Handler.dispatchMessage(Handler.java:108)
at android.os.Looper.loop(Looper.java:206)
at android.app.ActivityThread.main(ActivityThread.java:6733)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:845)
这是我的 app.gradle:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:27.0.2'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
// Firebase
compile 'com.firebaseui:firebase-ui-auth:3.2.1'
implementation 'com.facebook.android:facebook-login:4.30.0'
compile 'com.google.firebase:firebase-core:11.8.0'
compile 'com.google.firebase:firebase-auth:11.8.0'
compile 'com.google.firebase:firebase-database:11.8.0'
compile 'com.google.firebase:firebase-messaging:11.8.0'
compile 'com.google.firebase:firebase-storage:11.8.0'
// Butterknife
compile 'com.jakewharton:butterknife:8.5.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'
// Picasso
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.android.support:support-v4:27.0.2'
// Material rating bar
compile 'com.github.ornolfr:rating-view:0.1.2@aar'
// User image view library
compile 'de.hdodenhof:circleimageview:2.1.0'
// Google play services location
implementation 'com.google.android.gms:play-services-auth:11.8.0'
implementation 'com.google.android.gms:play-services-places:11.8.0'
implementation 'com.google.android.gms:play-services-location:11.8.0'
// Validation library
compile 'com.mobsandgeeks:android-saripaar:2.0.3'
// Progress bar library
compile 'com.github.rahatarmanahmed:circularprogressview:2.5.0'
// Chip-tag cloud
compile 'com.github.pchmn:MaterialChipsInput:1.0.8'
testCompile 'junit:junit:4.12'
// Networking
compile 'com.squareup.retrofit2:retrofit:2.3.0'
compile 'com.google.code.gson:gson:2.8.2'
}
// Add to the bottom of the file
apply plugin: 'com.google.gms.google-services'
我没有混合奇怪版本的 firebase UI/firebase,因为 firebase UI 的文档说我正在使用 firebase/play services 11.8.0 和 firebase ui 3.2.1。关于这个奇怪问题的任何线索?谢谢!
问题出在我的主 activity 上。我不明白为什么,但是通过将 activity 的类型从 FragmentActivity 更改为 AppCompatActivity,错误就消失了。我还从我的 gradle 支持 v4 库中删除了
在我的项目中更新 firebase UI 和 firebase auth 的版本后,我遇到了一个奇怪的行为。错误显示“Error inflating class TextView”,这里是堆栈跟踪:
02-24 16:22:15.537 20983-20983/com.nikogalla.tripbook E/AndroidRuntime:
FATAL EXCEPTION: main
Process: com.nikogalla.tripbook, PID: 20983
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.nikogalla.tripbook/com.firebase.ui.auth.KickoffActivity}: android.view.InflateException: Binary XML file line #0: Binary XML file line #0: Error inflating class TextView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2891)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2969)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1658)
at android.os.Handler.dispatchMessage(Handler.java:108)
at android.os.Looper.loop(Looper.java:206)
at android.app.ActivityThread.main(ActivityThread.java:6733)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:845)
Caused by: android.view.InflateException: Binary XML file line #0: Binary XML file line #0: Error inflating class TextView
Caused by: android.view.InflateException: Binary XML file line #0: Error inflating class TextView
Caused by: java.lang.UnsupportedOperationException: Failed to resolve attribute at index 6: TypedValue{t=0x2/d=0x7f040075 a=4 r=0x7f06002d}
at android.content.res.TypedArray.getColorStateList(TypedArray.java:541)
at android.widget.TextView.<init>(TextView.java:913)
at android.widget.TextView.<init>(TextView.java:827)
at android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.java:76)
at android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.java:72)
at android.support.v7.app.AppCompatViewInflater.createView(AppCompatViewInflater.java:103)
at android.support.v7.app.AppCompatDelegateImplV9.createView(AppCompatDelegateImplV9.java:1016)
at android.support.v7.app.AppCompatDelegateImplV9.onCreateView(AppCompatDelegateImplV9.java:1073)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:772)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:730)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:863)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)
at android.view.LayoutInflater.inflate(LayoutInflater.java:515)
at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
at android.support.v7.app.AppCompatDelegateImplV9.createSubDecor(AppCompatDelegateImplV9.java:383)
at android.support.v7.app.AppCompatDelegateImplV9.ensureSubDecor(AppCompatDelegateImplV9.java:323)
at android.support.v7.app.AppCompatDelegateImplV9.onPostCreate(AppCompatDelegateImplV9.java:170)
at android.support.v7.app.AppCompatActivity.onPostCreate(AppCompatActivity.java:97)
at android.app.Instrumentation.callActivityOnPostCreate(Instrumentation.java:1284)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2873)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2969)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1658)
at android.os.Handler.dispatchMessage(Handler.java:108)
at android.os.Looper.loop(Looper.java:206)
at android.app.ActivityThread.main(ActivityThread.java:6733)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:845)
这是我的 app.gradle:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:27.0.2'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
// Firebase
compile 'com.firebaseui:firebase-ui-auth:3.2.1'
implementation 'com.facebook.android:facebook-login:4.30.0'
compile 'com.google.firebase:firebase-core:11.8.0'
compile 'com.google.firebase:firebase-auth:11.8.0'
compile 'com.google.firebase:firebase-database:11.8.0'
compile 'com.google.firebase:firebase-messaging:11.8.0'
compile 'com.google.firebase:firebase-storage:11.8.0'
// Butterknife
compile 'com.jakewharton:butterknife:8.5.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'
// Picasso
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.android.support:support-v4:27.0.2'
// Material rating bar
compile 'com.github.ornolfr:rating-view:0.1.2@aar'
// User image view library
compile 'de.hdodenhof:circleimageview:2.1.0'
// Google play services location
implementation 'com.google.android.gms:play-services-auth:11.8.0'
implementation 'com.google.android.gms:play-services-places:11.8.0'
implementation 'com.google.android.gms:play-services-location:11.8.0'
// Validation library
compile 'com.mobsandgeeks:android-saripaar:2.0.3'
// Progress bar library
compile 'com.github.rahatarmanahmed:circularprogressview:2.5.0'
// Chip-tag cloud
compile 'com.github.pchmn:MaterialChipsInput:1.0.8'
testCompile 'junit:junit:4.12'
// Networking
compile 'com.squareup.retrofit2:retrofit:2.3.0'
compile 'com.google.code.gson:gson:2.8.2'
}
// Add to the bottom of the file
apply plugin: 'com.google.gms.google-services'
我没有混合奇怪版本的 firebase UI/firebase,因为 firebase UI 的文档说我正在使用 firebase/play services 11.8.0 和 firebase ui 3.2.1。关于这个奇怪问题的任何线索?谢谢!
问题出在我的主 activity 上。我不明白为什么,但是通过将 activity 的类型从 FragmentActivity 更改为 AppCompatActivity,错误就消失了。我还从我的 gradle 支持 v4 库中删除了