由于APK文件无效,FriendPickerSample安装失败! [FriendPickerSample]

时间:2013-12-05 12:17:04

标签: android facebook

我在使用facebook sdk个样本时遇到了错误。我检查了logcat。logcatconsole中的错误如下所示。

控制台

  

[2013-12-05 17:36:05 - FriendPickerSample]由于安装失败   APK文件无效! [2013-12-05 17:36:05 - FriendPickerSample]请   检查logcat输出以获取更多详细信息。 [2013-12-05 17:36:05 -   FriendPickerSample]启动已取消

Logcat

  

12-05 17:42:02.617:W / PackageParser(582):无法阅读   /data/local/tmp/FriendPickerSample.apk 12-05的AndroidManifest.xml   17:42:02.617:W / PackageParser(582):java.io.FileNotFoundException:   AndroidManifest.xml 12-05 17:42:02.617:W / PackageParser(582):at   android.content.res.AssetManager.openXmlAssetNative(Native方法)   12-05 17:42:02.617:W / PackageParser(582):at   android.content.res.AssetManager.openXmlBlockAsset(AssetManager.java:487)   12-05 17:42:02.617:W / PackageParser(582):at   android.content.res.AssetManager.openXmlResourceParser(AssetManager.java:455)   12-05 17:42:02.617:W / PackageParser(582):at   android.content.pm.PackageParser.parsePackageLite(PackageParser.java:722)   12-05 17:42:02.617:W / PackageParser(582):at   com.android.defcontainer.DefaultContainerService $ 1.getMinimalPackageInfo(DefaultContainerService.java:169)   12-05 17:42:02.617:W / PackageParser(582):at   com.android.internal.app.IMediaContainerService $ Stub.onTransact(IMediaContainerService.java:110)   12-05 17:42:02.617:W / PackageParser(582):at   android.os.Binder.execTransact(Binder.java:367)12-05 17:42:02.617:   W / PackageParser(582):at dalvik.system.NativeStart.run(Native Method)   12-05 17:42:02.617:W / DefContainer(582):无法解析包12-05   17:42:02.627:W / ActivityManager(169):找不到内容提供商   权限撤销:file:///data/local/tmp/FriendPickerSample.apk

7 个答案:

答案 0 :(得分:18)

我在使用Facebook SDK提供的样本时遇到了同样的问题。 最后,我按照这些步骤找出了问题。

  • 问题的主要原因是libs文件夹(它被声明为链接但是根据您的文件夹配置,它可能是一个断开的链接)随项目一起提供,所以删除它。

enter image description here

  • 签入您的项目属性, - > Android,您的项目引用了SDK的库(屏幕的下半部分)

enter image description here

  • 现在清理并构建项目。

如果有人在寻找最简单的facebook集成解决方案,那么我更愿意使用Simple Facebook SDK

答案 1 :(得分:2)

在我的Facebook示例应用程序测试期间,我偶然发现了这个错误几次。 你应该做的和帮助我的是:

  1. 使用 - >更改项目构建目标API右键单击项目 - >属性 - >机器人。

  2. 转到项目的bin文件夹中删除已创建的apk文件,然后尝试再次运行该项目。

答案 2 :(得分:1)

在这里遇到同样的问题,您只需要导入项目而不将项目复制到工作区'选项已启用。如果您已导入并复制它们,请在重新导入之前将其硬删除。

我跳过了那个并遇到了和你一样的问题。 Facebook官方教程说:

  

您必须取消选中“将项目复制到工作区”'选项,以便每个示例项目保留对相邻SDK的正确引用。

https://developers.facebook.com/docs/android/getting-started

答案 3 :(得分:1)

删除libs文件夹并清理项目,现在运行...

答案 4 :(得分:0)

我对同样问题的解决方案是:

  1. 从HelloFacebookSample项目中删除libs文件夹
  2. 更新manifast.xml目标sdk:  

  3. 添加v7和v4支持库。这将是" appcompat_v7"在创建新项目时在eclipse中自动创建的库项目。

答案 5 :(得分:-1)

如上所述,摆脱这个错误的最简单方法是从bin中删除APK并删除libs文件夹,然后清理项目,你就可以了。

答案 6 :(得分:-5)

现在我得到了我的问题的解决方案。我只需按照以下链接。它工作正常

facebook developers site