我已经在一个项目上工作了3个月,一切正常。
从昨天开始,Eclipse不允许我在手机上安装我的应用程序。应用程序编译正常,但是当我尝试运行程序时,我收到此错误:
Installation failed due to invalid APK file!
Please check logcat output for more details.
Launch canceled!
我一直在寻找Google中的错误,大多数人都说这是版本问题。我将uses-sdk版本设置为10,这是我开发的平台(以前它一直都有用!)。
当我检查logcat时,我明白了:
02-07 10:15:20.742: W/PackageParser(15356): Unable to read AndroidManifest.xml of /data/local/tmp/App.apk
02-07 10:15:20.742: W/PackageParser(15356): java.io.FileNotFoundException: AndroidManifest.xml
02-07 10:15:20.742: W/PackageParser(15356): at android.content.res.AssetManager.openXmlAssetNative(Native Method)
02-07 10:15:20.742: W/PackageParser(15356): at android.content.res.AssetManager.openXmlBlockAsset(AssetManager.java:486)
02-07 10:15:20.742: W/PackageParser(15356): at android.content.res.AssetManager.openXmlResourceParser(AssetManager.java:454)
02-07 10:15:20.742: W/PackageParser(15356): at android.content.pm.PackageParser.parsePackageLite(PackageParser.java:601)
02-07 10:15:20.742: W/PackageParser(15356): at com.android.defcontainer.DefaultContainerService$1.getMinimalPackageInfo(DefaultContainerService.java:138)
02-07 10:15:20.742: W/PackageParser(15356): at com.android.internal.app.IMediaContainerService$Stub.onTransact(IMediaContainerService.java:100)
02-07 10:15:20.742: W/PackageParser(15356): at android.os.Binder.execTransact(Binder.java:320)
02-07 10:15:20.742: W/PackageParser(15356): at dalvik.system.NativeStart.run(Native Method)
02-07 10:15:20.781: W/DefContainer(15356): Failed to parse package
02-07 10:15:20.789: W/PackageParser(15356): Unable to read AndroidManifest.xml of /data/local/tmp/App.apk
02-07 10:15:20.789: W/PackageParser(15356): java.io.FileNotFoundException: AndroidManifest.xml
02-07 10:15:20.789: W/PackageParser(15356): at android.content.res.AssetManager.openXmlAssetNative(Native Method)
02-07 10:15:20.789: W/PackageParser(15356): at android.content.res.AssetManager.openXmlBlockAsset(AssetManager.java:486)
02-07 10:15:20.789: W/PackageParser(15356): at android.content.res.AssetManager.openXmlResourceParser(AssetManager.java:454)
02-07 10:15:20.789: W/PackageParser(15356): at android.content.pm.PackageParser.parsePackageLite(PackageParser.java:601)
02-07 10:15:20.789: W/PackageParser(15356): at com.android.defcontainer.DefaultContainerService$1.getMinimalPackageInfo(DefaultContainerService.java:138)
02-07 10:15:20.789: W/PackageParser(15356): at com.android.internal.app.IMediaContainerService$Stub.onTransact(IMediaContainerService.java:100)
02-07 10:15:20.789: W/PackageParser(15356): at android.os.Binder.execTransact(Binder.java:320)
02-07 10:15:20.789: W/PackageParser(15356): at dalvik.system.NativeStart.run(Native Method)
02-07 10:15:20.828: W/DefContainer(15356): Failed to parse package
我从bin文件夹中获取了apk文件,当它解压缩时,我在其中找到了我的AndroidManifest.xml。然后,我检查了Eclipse中的错误状态,并说它“无法在工作空间中找到文件D:\ xxx \ xxx \ xxx \ AndroidManifest.xml”。我也得到了同一项目的几个xml布局的相同错误。 但是我可以在Eclipse中看到,打开,编辑和保存这些文件,所以我发现它找不到它们有点奇怪。
最后一件事,昨天我可以在做一个干净的项目并重新启动Eclipse之后再次安装我的应用程序,但它似乎不再工作了,这不是一个好的解决方案(我无法做到干净并且每次都重新启动Eclipse我修改了我的代码!)。
你有没有遇到过这个问题?我怎么能解决它?
谢谢!
答案 0 :(得分:4)
我有类似的问题。只需尝试清理项目并重建。它会起作用。
答案 1 :(得分:1)
尝试从旧的现有资源重建项目
我有一次类似的问题,它对我有用,我希望它对你有用
答案 2 :(得分:1)
当我用尽磁盘空间,释放一些空间并清理项目解决了这个问题时,发生了这种情况。