我有一个Android应用程序在使用Android 2.3.3的AVD上完美运行,但它无法安装在任何可供我测试的设备上(索尼爱立信XPeria运行Android 2.3.3,LG Optimus运行Android 2.3.7和三星Galaxy Tab Android 4.0.3)。错误是“未安装应用程序”。据我所知,它可能与应用程序的错误清单文件有关,所以如果它可能有帮助,请点击AndroidManifest.xml
:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.hohlocola"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="7" />
<uses-permission
android:name="android.permission.INTERNET" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".HohloColaActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
我导出我的应用未签名 提前谢谢!
答案 0 :(得分:6)
您无法在真实设备上安装未签名的APK,您必须使用有效密钥导出APK。这甚至可以是您在调试模式下使用的密钥库/密钥,调试模式位于(默认情况下)~/.android/debug.keystore
或C:\Users\<user>\.android\debug.keystore
,密钥存储区为android
。包括密钥。
HTH
答案 1 :(得分:2)
必须签署Android应用。有关详细信息,请参阅Android App Signing docs。
答案 2 :(得分:1)
看看logcat。我的问题是错误的权限。我在应用程序标记中定义了 android.permission.INTERNET ,而不是单独的 uses-permission 。当您尝试启动应用程序时,Logcat输出会引发异常:
E/Launcher( 136): java.lang.SecurityException: Permission Denial: <...> requires android.permission.INTERNET
因此,请尝试找出阻止您的应用开始使用adb logcat的原因。
我也读过这篇文章'App not Installed' Error on Android并且有很多可能性。有人甚至不得不更新Java。