2011-08-26 77 views
0

我正在构建时间日志记录应用程序,并且已创建主布局。 我试图在我的手机Samsung Galaxy S上调试我的应用程序,它开始很好,但如果我关闭它并想再次运行它,它不在我的应用程序抽屉中。它显示在设置 - >程序 - >管理和在最近按住主页按钮时。Android应用程序安装但不显示在应用程序托盘中

下面是manifest.xml中

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.doweb.timelog" android:versionCode="1"> 
<application android:icon="@drawable/icon" android:label="@string/app_name" android:theme="@android:style/Theme.NoTitleBar"> 
     <activity android:name="MainActivity" android:label="@string/app_name"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN"> 
       <category android:name="android.intent.category.LAUNCHER"> 
      </category></action></intent-filter> 
     </activity> 
    </application> 
    <uses-sdk android:minSdkVersion="8"> 
</uses-sdk> 
</manifest> 

回答

0

您的活动的名字是这样的android:名称= “MainActivity”,你可以有一个尝试

2

我认为您的交易</action>标签在intent-过滤器处于错误的位置。 应该像这样:

<intent-filter> 
     <action android:name="android.intent.action.MAIN" > </action> 
     <category android:name="android.intent.category.LAUNCHER"> </category> 
</intent-filter> 

该过滤器是一种信号系统,这种活动应该在App-抽屉可见。当它不正确或存在时,活动将不可见。

通常最好使用封闭的空元素,以防止出现此错误:

<intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 

你也在你activitys全班面前缺少.。这总是与您的应用程序包名称有关。它将在内部加入到packagename + classname。所以点,否则会导致com.doweb.timelogMainActivity,这显然不是正确的参考。所以它应该是android:name=".MainActivity"

+0

我注意到这个点缺失,但没有解决它。我创建了一个新项目并重新设置。现在它完美:)但我认为你的解决方案可能已经工作,我不知道:) – AlexKotsc

+0

是的,我很确定这是意图过滤器,因为这是负责注册在启动器的事情。 – 2011-08-26 12:11:11

相关问题