>我尝试从以下示例构建并运行,但出现几个错误:
1-运行MainActivity时出错:Android Manifest中未声明活动"MainActivity.xml
2-错误:(553, 69(不允许字符串类型(在值为"的"activity_horizontal_margin"处(。
3-错误:任务":app:processDebugResources".>com.android.ide.common.process.ProcessException的执行失败:无法执行aapt
有人可以告诉我我错过了什么吗?
第一个错误("活动'MainActivity'未在AndroidManifest.xml中声明"(的意思正是它所说的。项目中有一个名为AndroidManifest.xml
的文件,您必须声明此文件中的所有Activity
。以下是 Android Studio 为新项目创建的清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.test.myapplication">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>
需要注意的两件重要事项:
1(<manifest>
标记的package
属性(在本例中位于第 3 行(必须与您用于 Java 代码的包名称匹配。
2( 您的MainActivity
必须有一个<activity>
标签(请参阅示例中的第 12 行(。
第二个错误("不允许字符串类型(在'activity_horizontal_margin'处("(在没有代码的情况下更难调试,但这里有一个猜测。您链接两个的页面包含以下两行:
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
您必须确保 (a( 您没有从这些中删除@dimen/
前缀,并且 (b( 您已声明名为activity_horizontal_margin
的dimen
资源。通常,这将通过创建包含以下内容的内容res/values/dimens.xml
来完成:
<resources>
<dimen name="activity_horizontal_margin">16dp</dimen>
</resources>
还可以将这些dimen
资源引用替换为就地值,如下所示:
android:paddingLeft="16dp"
android:paddingRight="16dp"
1- 运行 MainActivity 时出错:Android Manifest 中未声明活动"MainActivity.xml
每个安卓应用程序都需要一个manifests/AndroidManifest.xml
。它包含有关应用的一般信息,例如应用的名称、图标和(导致错误的原因(应用中使用的所有活动的列表。在此文件的"应用程序"标签中,您需要插入以下内容:
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
这会在启动应用程序时将活动"MainActivity"声明为要启动的活动。
2- 错误:(553, 69( 不允许使用字符串类型(在值为"activity_horizontal_margin"的"处(。
正如Ben P.所提到的,指南中的Main.xml
指的是一个名为activity_horizontal_margin
的dimen
资源。若要解决此错误,必须在res/values/dimens.xml
文件中声明它,或者将该代码替换为一些显式值。
3- 错误:任务":app:processDebugResources"的执行失败.> com.android.ide.common.process.ProcessException:无法执行 aapt
发生此错误只是因为它找不到所需的资源(如错误 2 中所示(。由于缺少另一个资源,这里已经发生了同样的错误。因此,修复其他 2 个问题也应该解决此错误。