2017-04-06 16 views
2

한 화면 바코드 만 스캔하는 응용 프로그램에서 작업 중이며 zxing 라이브러리에서이 작업을 수행하고 있습니다. 하지만 내 문제는 안드로이드 스튜디오와 애플 리케이션을 설치하는 경우 잘 작동하지만 블루투스, 이메일, 젠더 등 출력 폴더 에서이 APK를 공유하는 경우입니다 .. 응용 프로그램이 설치되어 있지만 내가 충돌하고 예외가 응용 프로그램을 열 때 NoClassFoundException.출력 폴더에서 dubug apk를 공유 할 때 안드로이드 응용 프로그램이 다운 됨

치명적인 예외 : 당신은 전에 빌드를 청소 응용 프로그램을 공유하고 디버그 빌드를 확인해야

Process: com.jenex.cartracking, PID: 31223                  

    java.lang.RuntimeException: Unable to instantiate activity 
ComponentInfo{com.jenex.cartracking/com.jenex.cartracking.MainActivity}: java.lang.ClassNotFoundException: Didn't find class "com.jenex.cartracking.MainActivity" on path: DexPathList[[zip file "/data/app/com.jenex.cartracking-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]] 
                        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3029) 
                        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3300) 
                        at android.app.ActivityThread.access$1000(ActivityThread.java:211) 
                        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1705) 
                        at android.os.Handler.dispatchMessage(Handler.java:102) 
                        at android.os.Looper.loop(Looper.java:145) 
                        at android.app.ActivityThread.main(ActivityThread.java:6946) 
                        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:1404) 
                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199) 
                       Caused by: java.lang.ClassNotFoundException: Didn't find class "com.jenex.cartracking.MainActivity" on path: DexPathList[[zip file "/data/app/com.jenex.cartracking-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]] 
                        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:1094) 
                        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3019) 
                        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3300)  
                        at android.app.ActivityThread.access$1000(ActivityThread.java:211)  
                        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1705)  
                        at android.os.Handler.dispatchMessage(Handler.java:102)  
                        at android.os.Looper.loop(Looper.java:145)  
                        at android.app.ActivityThread.main(ActivityThread.java:6946)  
                        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:1404)  
                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)  
                       Suppressed: java.lang.ClassNotFoundException: com.jenex.cartracking.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 
+0

전체 LogCat을 게시하십시오. 그것은 누군가가 적절한 해결책을 제공하는 데 도움이됩니다. –

+0

같은 문제가 있습니다. 저는 그 APK를 테스터들과 공유했습니다. 테스트를 위해, 나는 심지어 안드로이드 스튜디오로 빈 깨끗한 프로젝트를 만들었고, 스튜디오에서 시작했다. 그리고 그것은 전화로 잘 작동한다. 하지만 'output'폴더에있는 apk를 설치하면 apk가 잘 설치되지만 시작시 충돌이 발생합니다. 이제 이유와 해결책을 찾고 있습니다. –

답변

3

주요 여기

는 로그 캣입니다. 이 APK를 구축 생성 APK

> 빌드 -> 프로젝트 정리

  • 고토는 빌드 -

    1. 고토가 구축이 간단한 단계를 따르십시오. 이 Apk를 공유하십시오.

      희망이 도움이됩니다.

  • +1

    나는 그것을 시도했지만 해결하지 않았다. 내 Logcat을 보아라. –

    +0

    build.gradle의 defaultConfig에서 ** multiDexEnabled true **를 설정 했습니까? –

    0

    같은 문제가있는 것 같습니다. 이러한 예외는 현재 빈 프로젝트로 생성 된 모든 프로젝트에서 발생합니다. myproject_debug.apk를 테스터와 공유했지만 이전에는 시작시 충돌이 발생했습니다. 어쩌면 Android Studio 또는 플랫폼 도구의 일부 업데이트 이후에 시작되었을 수도 있습니다. 확실하지 않습니다.

    • 안드로이드 Studio의 메뉴로 이동 열고 메뉴는 '빌드'

      :

      그래서, 출력 폴더에서 복사 프로젝트 debug.apk 전에 나

      에 대한 그 일의 주위에 몇 가지 작업을 발견

    • 클릭 내가 복사

    후 성공적으로 빌드 'APK 빌드'를 myproject-debug.apk를 출력 폴더에서 제거하면 제대로 작동합니다.