我只是关注Android开发人员training guide,我已经遇到了第二步的麻烦。
我按照指南(我甚至不做任何事情......)点击“运行”,从屏幕上选择了我的Galaxy S4,然后点击了。我收到以下错误
[2014-07-06 19:56:27 - MyFirstApp] Android Launch!
[2014-07-06 19:56:27 - MyFirstApp] adb is running normally.
[2014-07-06 19:56:27 - MyFirstApp] No Launcher activity found!
[2014-07-06 19:56:27 - MyFirstApp] The launch will only sync the application package on the device!
[2014-07-06 19:56:27 - MyFirstApp] Performing sync
[2014-07-06 19:56:27 - MyFirstApp] Automatic Target Mode: Unable to detect device compatibility. Please select a target device.
[2014-07-06 19:56:31 - MyFirstApp] Application already deployed. No need to reinstall.
[2014-07-06 19:56:31 - MyFirstApp] \MyFirstApp\bin\MyFirstApp.apk installed on device
[2014-07-06 19:56:31 - MyFirstApp] Done!
老实说,我不知道自己做错了什么,因为我对Android没有任何经验。
唯一不同的是教程中他们的targetSdkVersion是19,但我使用的是21
以下是我的AndroidManefiest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myfirstapp"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="21" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
</application>
</manifest>
答案 0 :(得分:3)
您忘了将自己的活动声明为Manifest.xml。
每当您创建活动( blablabla类扩展活动)时,您必须将其声明为Android Manifest.xml,以便设备能够跟踪您应用的生命周期
我们称之为活动是一个提供托管窗口信息的类,该类应该扩展活动,所有这些类都必须在Manifest.xml上声明文件如下:
<application>
...
<activity
android:name="com.yourpackage.ClassName">
</activity>
</application>
您的活动类可能名为 MainActivity ,您只需将其添加到代码中<application> </application>
标记:
<activity
android:name="com.example.myfirstapp.MainActivity"
android:label="@string/app_name"> <!-- This is the text that will appear on your action bar -->
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<intent-filter>
告诉android这个类是&#34;主入口&#34;,第一个需要加载到你的应用程序的活动被启动,只有第一个活动需要{{1标签,其他人只需要我给出的第一个例子。
如果您从Android开发开始,我建议您阅读ActionBar和What to do when the device is rotated
良好的编码:)
答案 1 :(得分:1)
为您的活动启用以下intent-filter。
<activity class=".YourActivity" android:label="your activity label">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
{action = android.app.action.MAIN}匹配所有活动 可以用作应用程序的顶级入口点。
{action = android.app.action.MAIN, category = android.app.category.LAUNCHER}是实际使用的意图 Launcher填充其顶级列表。
另请参阅Intent