我正在构建时间记录应用程序,我已经创建了主要布局。 我尝试在我的手机三星Galaxy S上调试我的应用程序,它开始很好,但如果我关闭它并想再次运行它不在我的应用程序抽屉里。当按住主页按钮时,它会显示在“设置” - >“程序” - >“管理”和“最近”中。
这是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 :(得分:2)
我认为intent-filter中的结束</action>
标记处于错误的位置。
应该是这样的:
<intent-filter>
<action android:name="android.intent.action.MAIN" > </action>
<category android:name="android.intent.category.LAUNCHER"> </category>
</intent-filter>
该过滤器是向系统发出的信号,表明该活动应该在app-drawer中可见。当它不正确或存在时,活动将不可见。
通常最好使用封闭的空元素来防止此错误:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
您在活动课程前面也错过了.
。这始终与您的应用程序包名称相关。它将在内部加入packagename
+ classname
。因此点,否则会导致com.doweb.timelogMainActivity
,这显然不是正确的参考。所以它应该是android:name=".MainActivity"
。
答案 1 :(得分:0)
你的活动的名字就像这个android:name =“。MainActivity”,你可以尝试一下