2016-01-26 18 views
0

我得到这个崩溃开发者控制台报告一个Android 2.3.3 - 2.3.7设备:如何修复我的android应用程序中的以下分析失败?

java.lang.NoSuchMethodError: newSingleThreadExecutor 
at android.app.QueuedWork.singleThreadExecutor(QueuedWork.java:82) 
at android.app.ContextImpl$SharedPreferencesImpl.enqueueDiskWrite(ContextImpl.java:3245) 
at android.app.ContextImpl$SharedPreferencesImpl.access$100(ContextImpl.java:2869) 
at android.app.ContextImpl$SharedPreferencesImpl$EditorImpl.apply(ContextImpl.java:3087) 
at com.google.android.gms.analytics.internal.zzai$zza.zzbq(Unknown Source) 
                zzlN 
at com.google.android.gms.analytics.internal.zzaf.zzlx(Unknown Source) 
               zzb 
at com.google.android.gms.analytics.internal.zzaf.zziJ(Unknown Source) 
               zza 
               zzh 
               zza 
               zzl 
at com.google.android.gms.analytics.internal.zzc.zza(Unknown Source) 
               zza 
               zza 
               zza 
               zzj 
at com.google.android.gms.analytics.internal.zzc.zzbg(Unknown Source) 
               zze 
at com.google.android.gms.analytics.internal.zzl.zzjT(Unknown Source) 
at com.google.android.gms.analytics.internal.zzl.start(Unknown Source) 
               zzf 
               zzb 
at com.google.android.gms.analytics.internal.zzb.start(Unknown Source) 
at com.google.android.gms.analytics.internal.zzf.<init>(Unknown Source) 
at com.google.android.gms.analytics.internal.zzf.zzjw(Unknown Source) 
               zzaa 
               zza 
at com.google.android.gms.analytics.GoogleAnalytics.zza(Unknown Source) 
               getInstance 
               setDryRun 
               newTracker 
at ab.androidcommons.application.BaseApplication.activityResumed(Unknown Source) 
               getTracker 
               sendEvent 
               sendScreenView 
               sendException 
               setDimensions 
at ab.androidcommons.application.BaseApplication.activityResumed(Unknown Source) 
               getTracker 
               sendEvent 
               sendScreenView 
               sendException 
               setDimensions 
at ab.androidcommons.ui.activities.BaseAppCompatActivity.onCreate(Unknown Source) 
at com.tools.screenshot.ui.activities.LicenseCheck.onCreate(Unknown Source) 
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1082) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1699) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1754) 
at android.app.ActivityThread.access$1500(ActivityThread.java:156) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1000) 
at android.os.Handler.dispatchMessage(Handler.java:130) 
at android.os.Looper.loop(SourceFile:351) 
at android.app.ActivityThread.main(ActivityThread.java:3821) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:538) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:969) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:727) 
at dalvik.system.NativeStart.main(Native Method) 

LicenceCheck正在扩大BaseAppCompatActivity的崩溃活动:

public class LicenseCheck extends BaseAppCompatActivity { 
} 

这里是BaseAppCompatActivity:

public abstract class BaseAppCompatActivity extends AppCompatActivity { 

// abstract methods 
protected abstract String getScreenName(); 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    ThemeUtils.setTheme(this); 
    ContextUtils.getAnalyticsApplication(this).sendScreenView(getScreenName()); 
} 

在哪里以及如何解决此问题?

回答

0

Proguard会混淆你的代码。 您需要编辑您的ProGuard文件的规则如下:

-dontwarn com.google.android.gms.** 
-keep class com.google.android.gms.** 

比照这个问题:Proguard and error

+0

它怎么说,我得到了它仅适用于2.3.x版本的版本和相同的混淆代码工作正常对于其他设备? –

相关问题