Android appcompat_v7 не запускается
Я видел здесь похожие проблемы, но никто не мог мне помочь. Я использую затмение. В моем проекте я использую RoundedImageView-master в качестве библиотеки. Это значит, что у меня в eclipse "основной" проект без исходников и папка "gen" с именем пакета: com.makeramen.oundedimageview и я appcompat_v7-проект с lib android-support-v7-appcompat.jar.
В моих макетах я использую вместо "... res-auto" это:
xmlns:app="http://schemas.android.com/apk/lib/com.makeramen.roundedimageview"
В моей основной деятельности я импортировал это:
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.app.AppCompatActivity;
import android.support.design.widget.NavigationView;
import android.support.design.widget.NavigationView.OnNavigationItemSelectedListener;
В моем Buildpath в разделе библиотеки появляется мой "главный" -проект. Теперь я хочу запустить свое приложение, но я получаю из cat_log:
FATAL EXCEPTION: main
Process: com.hdd.myExampleApp, PID: 3454
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.hdd.myExampleApp/com.hdd.myExampleApp.MainActivity}: java.lang.ClassNotFoundException: Didn't find class "com.hdd.myExampleApp.MainActivity" on path: DexPathList[[zip file "/data/app/com.hdd.myExampleApp-1/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2209)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
at android.app.ActivityThread.access$800(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5221)
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:899)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.hdd.myExampleApp.MainActivity" on path: DexPathList[[zip file "/data/app/com.hdd.myExampleApp-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:1065)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2199)
... 10 more
Suppressed: java.lang.NoClassDefFoundError: com.hdd.myExampleApp.MainActivity
at dalvik.system.DexFile.defineClassNative(Native Method)
at dalvik.system.DexFile.defineClass(DexFile.java:226)
at dalvik.system.DexFile.loadClassBinaryName(DexFile.java:219)
at dalvik.system.DexPathList.findClass(DexPathList.java:321)
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:54)
... 14 more
Suppressed: java.lang.ClassNotFoundException: com.hdd.myExampleApp.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
и моя консоль говорит мне:
[myExampleApp] Android Launch!
[myExampleApp] adb is running normally.
[myExampleApp] Performing com.hdd.myExampleApp.MainActivity activity launch
[2myExampleApp] Uploading myExampleApp.apk onto device '192.168.56.101:5555'
[2myExampleApp] Installing myExampleApp.apk...
[myExampleApp] Success!
[myExampleApp] Project dependency found, installing: main
[main] Uploading main.apk onto device '192.168.56.101:5555'
[main] Installing main.apk...
[main] Success!
[myExampleApp] Starting activity com.hdd.myExampleApp.MainActivity on device 192.168.56.101:5555
[myExampleApp] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.hdd.myExampleApp/.MainActivity }
я подумал, что я должен включить в свой манифест что-то вроде этого:
<uses-library android:name="com.makeramen.roundedimageview"/>
Это имя пакета появляется в моей папке gen из основного проекта. Когда я начинаю это, я geht из моей консоли:
[myExampleApp] Android Launch!
[myExampleApp] adb is running normally.
[myExampleApp] Performing com.hda.myExampleApp.MainActivity activity launch
[myExampleApp] Uploading myExampleApp.apk onto device '192.168.56.101:5555'
[myExampleApp] Installing myExampleApp.apk...
[myExampleApp] Installation error: INSTALL_FAILED_MISSING_SHARED_LIBRARY
[myExampleApp] Please check logcat output for more details.
[myExampleApp] Launch canceled!
У меня больше нет идей, что я мог сделать. Пожалуйста, помогите мне:)
1 ответ
Вы должны использовать только xmlns:app="http://schemas.android.com/apk/res-auto"
а сам андроид нашел относительный ресурс.