7

I was modyfing my android app, and I was trying it on real device (Run Application in eclipse) and all was working good. So When I was satisfied of my changes, I opened the Manifest in order to modify the version for releasing it, but WITHOUT ANY CHANGES in Manifest an error occurred at line:

<uses-permission android:name="android.permission.INSTALL_PACKAGES" />

the error is:

Permission is only granted to system apps

How is this possible? I builded my application many times using this line.

4

3 回答 3

18

谢谢大家。我解决了这个奇怪的问题

 Project > Clean

现在一切都恢复正常了!

于 2012-11-23T15:06:55.323 回答
2

您可能不会自己安装软件包,甚至不要问这个问题。

用于Intent此目的:

Intent installIntent = new Intent(Intent.ACTION_VIEW );
installIntent.setDataAndType(
    Uri.parse("file://" + context.getFilesDir().getAbsolutePath() + "/" + file_name_to_install),
    "application/vnd.android.package-archive");
startActivity(installIntent);

如果您使用的是 Eclipse,很可能它使用了旧版本/过时版本的 Manifest,当您打开它时,更改会重新加载并显示错误消息。只需删除违规权限并使用意图。

于 2012-11-23T14:52:55.230 回答
2

如果您已经更改了棉绒偏好,则清洁将起作用。否则检查以下解决方案。

权限仅授予系统应用程序

它说要更改您的 Lint 设置

在 Eclipse 中:

窗口 -> 首选项 -> Android -> Lint 错误检查。

在列表中找到带有 的条目ID = ProtectedPermission。将 Severity 设置为低于 Error 的值。这样您仍然可以使用 Eclipse 编译项目。

在 Android Studio 中:

File -> Settings -> Inspections

在 下Android Lint,找到Using system app permission。取消选中该复选框或选择低于错误的严重性。

于 2013-07-21T07:53:55.613 回答