2016-09-15 54 views
0

我使用我的mac os上的android studio来创建一个空的活动,并运行它。 该应用程序可以设置和工作well.But logcat报告许多错误。为什么我在mac os上的android studio报告了这么多错误!但应用程序运行良好

就这样如下:

09-15 06:24:43.847 7857-7857/com.home.ating.test E/InstantRun: Could not find slices in APK; aborting. 
09-15 06:24:43.857 7857-7857/com.home.ating.test E/dalvikvm: Could not find class 'android.os.PersistableBundle', referenced from method com.home.ating.test.MainActivity.access$super 
09-15 06:24:43.857 7857-7857/com.home.ating.test E/dalvikvm: Could not find class 'android.os.PersistableBundle', referenced from method com.home.ating.test.MainActivity.access$super 
09-15 06:24:43.857 7857-7857/com.home.ating.test E/dalvikvm: Could not find class 'android.media.session.MediaController', referenced from method com.home.ating.test.MainActivity.access$super 
09-15 06:24:43.857 7857-7857/com.home.ating.test E/dalvikvm: Could not find class 'android.widget.Toolbar', referenced from method com.home.ating.test.MainActivity.access$super 
09-15 06:24:43.857 7857-7857/com.home.ating.test E/dalvikvm: Could not find class 'android.app.ActivityManager$TaskDescription', referenced from method com.home.ating.test.MainActivity.access$super 
09-15 06:24:43.857 7857-7857/com.home.ating.test E/dalvikvm: Could not find class 'android.app.SharedElementCallback', referenced from method com.home.ating.test.MainActivity.access$super 
09-15 06:24:43.857 7857-7857/com.home.ating.test E/dalvikvm: Could not find class 'android.os.PersistableBundle', referenced from method com.home.ating.test.MainActivity.access$super 
09-15 06:24:43.867 7857-7857/com.home.ating.test E/dalvikvm: Could not find class 'android.app.SharedElementCallback', referenced from method com.home.ating.test.MainActivity.access$super 
09-15 06:24:43.877 7857-7857/com.home.ating.test E/dalvikvm: Could not find class 'android.app.assist.AssistContent', referenced from method com.home.ating.test.MainActivity.access$super 
09-15 06:24:43.877 7857-7857/com.home.ating.test E/dalvikvm: Could not find class 'android.view.SearchEvent', referenced from method com.home.ating.test.MainActivity.access$super 
09-15 06:24:43.877 7857-7857/com.home.ating.test E/dalvikvm: Could not find class 'android.os.PersistableBundle', referenced from method com.home.ating.test.MainActivity.access$super 
09-15 06:24:43.927 7857-7857/com.home.ating.test E/dalvikvm: Could not find class 'android.graphics.drawable.RippleDrawable', referenced from method android.support.v7.widget.AppCompatImageHelper.hasOverlappingRendering 

和我的build.gradle

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 24 
    buildToolsVersion "24.0.2" 

    defaultConfig { 
     applicationId "com.home.ating.test" 
     minSdkVersion 19 
     targetSdkVersion 24 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
       compile fileTree(dir: 'libs', include: ['*.jar']) 
       testCompile 'junit:junit:4.12' 
       compile 'com.android.support:appcompat-v7:24.2.0' 
      } 

我不知道该如何处理呢?我怎样才能消除这些错误? 我的android模拟器版本是4.4。

+2

请发布您的MainActivity代码。 –

+0

请发布设备运行的Android版本 –

+0

我hava更新了我的问题。 Android模拟器版本是4.4。 – twist

回答

0

由于仿真器(或设备)运行的Android版本比引入这些类的版本老,因此您的编译器无法找到的类很可能不会出现在(Android Studio或Genymotion)仿真器(或设备)上首次。由于您的应用程序运行良好,你可以假设,在代码中,这些类是在与运行过程中没有进入条件子句(ifswitch,三元等)使用的路径,例如:

if(android.os.Build.VERSION.SDK_INT < someThreshold) { 
    doOneThing(); // not involving the missing class 
} else { 
    doAnother(); // involving a class in question 
} 

您可以通过切换到最近的Android版本(6.0左右)的模拟器来测试这是否是正确的答案。

+0

太酷了,当我使用Android 7.0仿真器时,这些错误不存在。非常感谢你! – twist

相关问题