判断了是否是进程进行初始化,还是会闪退,在启动页create的时候
问题同上:
Caused by: java.lang.ExceptionInInitializerError
at skin.support.content.res.SkinCompatUserThemeManager.get(SourceFile:124)
at skin.support.content.res.SkinCompatVectorResources.a(SourceFile:62)
at skin.support.content.res.SkinCompatVectorResources.getDrawableCompat(SourceFile:89)
at skin.support.widget.SkinCompatImageHelper.applySkin(SourceFile:57)
at skin.support.widget.SkinCompatImageHelper.loadFromAttributes(SourceFile:35)
at com.bilin.skin.compatview.SkinTintImageButton.(SourceFile:37)
at com.bilin.skin.compatview.SkinTintImageButton.(SourceFile:28)
at java.lang.reflect.Constructor.newInstance0(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
at android.view.LayoutInflater.createView(LayoutInflater.java:852)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1004)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:959)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1121)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1082)
at android.view.LayoutInflater.parseInclude(LayoutInflater.java:1261)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1117)
... 23 more
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String skin.support.utils.SkinPreference.getUserTheme()' on a null object reference
at skin.support.content.res.SkinCompatUserThemeManager.d(SourceFile:64)
at skin.support.content.res.SkinCompatUserThemeManager.(SourceFile:53)
at skin.support.content.res.SkinCompatUserThemeManager.(SourceFile:39)
... 39 more
实现代码如下,catch也catch不住
public SkinTintImageButton(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
mBackgroundTintHelper = new SkinCompatBackgroundHelper(this);
mBackgroundTintHelper.loadFromAttributes(attrs, defStyleAttr);
mImageHelper = new SkinCompatImageHelper(this);
try {
mImageHelper.loadFromAttributes(attrs, defStyleAttr);
} catch (Error e) {
LogUtil.e("SkinTintImageButton", "Error" + e.getMessage());
}
}
#00 pc 0000000000055d60 /system/lib64/libandroidfw.so (android::ResStringPool::indexOfString(char16_t const*, unsigned long) const+72) [arm64-v8a::46b5ebe44a573c11445a00b34fd291d6]
2
#01 pc 000000000004d1ec /system/lib64/libandroidfw.so (android::LoadedPackage::FindEntryByName(std::__1::basic_string<char16_t, std::__1::char_traits<char16_t>, std::__1::allocator<char16_t> > const&, std::__1::basic_string<char16_t, std::__1::char_traits<char16_t>, std::__1::allocator<char16_t> > const&) const+52) [arm64-v8a::46b5ebe44a573c11445a00b34fd291d6]
3
#02 pc 000000000003f49c /system/lib64/libandroidfw.so (android::AssetManager2::GetResourceId(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&, std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&, std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&) const+396) [arm64-v8a::46b5ebe44a573c11445a00b34fd291d6]
4
#03 pc 000000000011f818 /system/lib64/libandroid_runtime.so [arm64-v8a::b349e6ec579854134f8ffe202339917e]
5
#04 pc 00000000002059ac /system/framework/arm64/boot-framework.oat [arm64-v8a::4017b2c6b9e387d2e25b8aa71c4c2d91]
6
java:
7
android.content.res.AssetManager.getResourceIdentifier(AssetManager.java:796)
8
android.content.res.ResourcesImpl.getIdentifier(ResourcesImpl.java:329)
9
android.content.res.Resources.getIdentifier(Resources.java:2262)
10
skin.support.content.res.SkinCompatResources.getTargetResId(SkinCompatResources.java:121)
11
skin.support.content.res.SkinCompatVectorResources.getSkinDrawableCompat(SkinCompatVectorResources.java:79)
12
skin.support.content.res.SkinCompatVectorResources.getDrawableCompat(SkinCompatVectorResources.java:89)
13
skin.support.widget.SkinCompatBackgroundHelper.applySkin(SkinCompatBackgroundHelper.java:50)
14
skin.support.widget.SkinCompatBackgroundHelper.loadFromAttributes(SkinCompatBackgroundHelper.java:35)
15
skin.support.widget.SkinCompatLinearLayout.(SkinCompatLinearLayout.java:25)
16
skin.support.widget.SkinCompatLinearLayout.(SkinCompatLinearLayout.java:19)
17
skin.support.app.SkinAppCompatViewInflater.createViewFromFV(SkinAppCompatViewInflater.java:69)
18
skin.support.app.SkinAppCompatViewInflater.createView(SkinAppCompatViewInflater.java:51)
19
skin.support.app.SkinCompatViewInflater.createViewFromInflater(SkinCompatViewInflater.java:77)
20
skin.support.app.SkinCompatViewInflater.createView(SkinCompatViewInflater.java:46)
21
skin.support.app.SkinCompatDelegate.createView(SkinCompatDelegate.java:70)
22
skin.support.app.SkinCompatDelegate.onCreateView(SkinCompatDelegate.java:31)
23
android.view.LayoutInflater$FactoryMerger.onCreateView(LayoutInflater.java:256)
24
android.view.LayoutInflater.tryCreateView(LayoutInflater.java:1116)
25
android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1052)
26
android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1016)
27
android.view.LayoutInflater.rInflate(LayoutInflater.java:1178)
28
android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1139)
29
android.view.LayoutInflater.inflate(LayoutInflater.java:696)
30
android.view.LayoutInflater.inflate(LayoutInflater.java:548)
31
com.esunny.ui.common.EsBaseFragment.onCreateView(EsBaseFragment.java:57)
32
com.esunny.ui.quote.favorite.EsFavoriteFragment.onCreateView(EsFavoriteFragment.java:160)
33
androidx.fragment.app.Fragment.performCreateView(Fragment.java:2699)
34
androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:320)
35
androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1199)
36
androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1368)
37
androidx.fragment.app.FragmentManager.moveFragmentToExpectedState(FragmentManager.java:1446)
38
androidx.fragment.app.BackStackRecord.executeOps(BackStackRecord.java:442)
39
androidx.fragment.app.FragmentManager.executeOps(FragmentManager.java:2181)
40
androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:2004)
41
androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1959)
42
androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1861)
43
androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2641)
44
androidx.fragment.app.FragmentManager.dispatchActivityCreated(FragmentManager.java:2589)
45
androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:247)
46
androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:541)
47
androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:210)
48
android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1435)
49
android.app.Activity.performStart(Activity.java:8153)
50
android.app.ActivityThread.handleStartActivity(ActivityThread.java:3776)
51
android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221)
52
android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201)
53
android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173)
54
android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
55
android.app.ActivityThread$H.handleMessage(ActivityThread.java:2315)
56
android.os.Handler.dispatchMessage(Handler.java:106)
57
android.os.Looper.loop(Looper.java:257)
58
android.app.ActivityThread.main(ActivityThread.java:8218)
59
java.lang.reflect.Method.invoke(Native Method)
60
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:626)
61
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1031)