android-studio - Android studio所有项目中build目录下的包导出手动安装到手机不能运行,即使新建项目都不能正常运行

查看:405
本文介绍了android-studio - Android studio所有项目中build目录下的包导出手动安装到手机不能运行,即使新建项目都不能正常运行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

Android studio所有项目中build->outputs->apk目录下的包导出手动安装到手机不能运行,即使新建项目都不能正常运行,新的空项目 都会这样。

1.Android studio 新建项目直接run可以正常运行,但是从上面目录导出的包手动安装到设备就不能正常运行

 FATAL EXCEPTION: main Process: com.example.myapplication, PID: 31859
                                                                           java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.myapplication/com.example.myapplication.MainActivity}: java.lang.ClassNotFoundException: Didn't find class "com.example.myapplication.MainActivity" on path: DexPathList[[zip file "/data/app/com.example.myapplication-2/base.apk"],nativeLibraryDirectories=[/vendor/lib64, /system/lib64]]
                                                                               at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2249)
                                                                               at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2413)
                                                                               at android.app.ActivityThread.access$800(ActivityThread.java:154)
                                                                               at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1316)
                                                                               at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                               at android.os.Looper.loop(Looper.java:135)
                                                                               at android.app.ActivityThread.main(ActivityThread.java:5357)
                                                                               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:952)
                                                                               at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:747)
                                                                            Caused by: java.lang.ClassNotFoundException: Didn't find class "com.example.myapplication.MainActivity" on path: DexPathList[[zip file "/data/app/com.example.myapplication-2/base.apk"],nativeLibraryDirectories=[/vendor/lib64, /system/lib64]]
                                                                               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 android.app.Instrumentation.newActivity(Instrumentation.java:1066)
                                                                               at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2239)
                                                                               at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2413) 
                                                                               at android.app.ActivityThread.access$800(ActivityThread.java:154) 
                                                                               at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1316) 
                                                                               at android.os.Handler.dispatchMessage(Handler.java:102) 
                                                                               at android.os.Looper.loop(Looper.java:135) 
                                                                               at android.app.ActivityThread.main(ActivityThread.java:5357) 
                                                                               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:952) 
                                                                               at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:747) 
                                                                               Suppressed: java.lang.ClassNotFoundException: com.example.myapplication.MainActivity
                                                                               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)
                                                                                       ... 13 more
                                                                            Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available

可能原因:
上几天在整jni的东西 所以下载 ndk等一下东西了。不知道是不是哪里配置错误。现在无法 从build目录下导入apk 进行安装。
求大神 帮忙分析解决。

manifest中的配置也是完全正确的 name即使写绝对路径也是报同样的错误

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.example.myapplication">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>

                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
    </application>

</manifest>

build.gradle中的文件

android {
    compileSdkVersion 26
    buildToolsVersion "26.0.1"
    defaultConfig {
        applicationId "com.example.myapplication"
        minSdkVersion 19
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

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:26.+'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    testCompile 'junit:junit:4.12'
}

解决方案

关闭 instant run 试试

File -> setting ->Build,Execution,Deployment->Instant run

这篇关于android-studio - Android studio所有项目中build目录下的包导出手动安装到手机不能运行,即使新建项目都不能正常运行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆