正在卸载Android应用程序



当我在Eclipse中创建一个Android项目并将其发送到我的设备进行调试时,该应用程序运行良好,但当我试图卸载它时,我收到了一条奇怪的消息。以下是重新创建我的问题的步骤:

Eclipse版本:4.2.0构建id:I20120608-1400

ADT版本:2.0.3 v201208082019-427395

  1. 运行Eclipse
  2. 单击文件->新建->项目
  3. 选择Android/Android应用程序项目
  4. 单击"下一步">
  5. 输入应用程序名称:测试
  6. 构建SDK:Android 4.1
  7. 最低要求的SDK:API 8 Android 2.2
  8. 启用:创建自定义启动器图标/在工作区中创建项目
  9. 单击"下一步"三次
  10. 单击"完成">
  11. 通过USB将4.1安卓设备连接到计算机
  12. 单击Run(运行)->Run from menu(从菜单运行)
  13. 在弹出窗口中选择"Android应用程序",即"运行方式"弹出窗口
  14. 单击"确定">
  15. MainActivity应用程序在设备上运行
  16. 单击Android设备上的"后退"按钮
  17. 打开设备上的应用程序,找到"MainActivity"应用程序
  18. 长按MainActivity图标并拖动到垃圾桶

以下是令人费解的部分:

而不是得到一个标准的

是否要卸载此应用程序

我得到一个对话框,文本是:

MainActivity是以下应用程序的一部分:Test是否要卸载此应用程序
  1. 为什么我会收到这个消息而不是标准消息
  2. 当我特别指出应用程序的名称是"测试"时,为什么MainActivity是应用程序的名字

其他信息:如果我进入设置->应用程序,应用程序显示为测试,但在我的启动器中列为MainActivity。

AndroidManifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.test"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="15" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/title_activity_main" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

解决方案是删除activity元素中的android:label="@string/title_activity_main"。

下面的AndroidManifest.xml解决了Android 4.1.1上的问题。

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.test"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="15" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

确保您的应用程序名称app_name未设置样式。

由于我在应用程序的其他地方使用了应用程序名称,我将其加粗,如下所示-在我的strings.xml 中

<string name="app_name"><b>We are sons<b></string>

当我删除时

<b></b>

标签,它工作。

保留它:

<string name="app_name">We are sons</string>

我不知道如何解决第一个问题,但第二个问题可以通过以下方式解决。该问题与Android新项目wizzard有关。要解决这个问题,您可以通过以下方式更正清单文件并重新部署您的项目:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.test"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="15" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/title_activity_main" >
<intent-filter android:label="@string/app_name" >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

不要忘记检查app_name的值是多少。你可以在这个帖子中找到更多的细节

最新更新