Android Launcher应用程序在使用密钥库签名后未检测到Home键

时间:2012-07-06 09:48:36

标签: android signing android-launcher android-homebutton

我正在Android冰淇淋三明治中创建一个Launcher应用程序。

我有3项活动。这是它们在清单文件中声明的方式。

    <activity
        android:label="@string/app_name"
        android:name=".ActivityOne" 
        android:theme="@android:style/Theme.Light.NoTitleBar"
        >
        <intent-filter >
              <action android:name="android.intent.action.MAIN" />    
             <category android:name="android.intent.category.HOME"/>    
            <category android:name="android.intent.category.DEFAULT" /> 
              <category android:name="android.intent.category.LAUNCHER" />  
        </intent-filter>
    </activity>

         <activity android:name=".Activitytwo"
        android:theme="@android:style/Theme.Light.NoTitleBar">

    </activity>

    <activity android:name=".ActivityThree"
        android:theme="@android:style/Theme.Light.NoTitleBar">

    </activity>

在手机中安装apk并按下系统栏中的Home键后,我转到“ActivityOne”。这工作得很好。

然后我创建了一个签名apk的密钥。从Eclipse导出项目并签署了apk。现在按Home键无效。

签名后,我需要应用程序以与原样相同的方式工作。

有什么想法吗?

2 个答案:

答案 0 :(得分:3)

解决了它。

在活动标签下的清单中添加以下行解决了它。

android:launchMode="singleTask"

<activity
    android:label="@string/app_name"
    android:name=".ActivityOne"
    android:launchMode="singleTask"
    android:theme="@android:style/Theme.Light.NoTitleBar"
    >
    <intent-filter >
          <action android:name="android.intent.action.MAIN" />    
         <category android:name="android.intent.category.HOME"/>    
        <category android:name="android.intent.category.DEFAULT" /> 
          <category android:name="android.intent.category.LAUNCHER" />  
    </intent-filter>
</activity>

答案 1 :(得分:0)

删除两行

<category android:name="android.intent.category.HOME"/>    
<category android:name="android.intent.category.DEFAULT" />
来自您的ActivityOne的

<intent-filter >
...
...
</intent-filter>