当前位置: 首页 > 知识库问答 >
问题:

aapt2 链接失败: 编译找不到Sdk版本

叶鸿煊
2023-03-14

尝试使用aapt2而不是aapt。编译似乎还可以,但我有一个问题:

+ aapt2 link -R build/mipmap-xhdpi_ic_launcher.png.flat -R build/values_public.arsc.flat -R build/mipmap-xxhdpi_ic_launcher.png.flat -R build/mipmap-hdpi_ic_launcher.png.flat -R build/mipmap-mdpi_ic_launcher.png.flat -R build/values_strings.arsc.flat -R build/mipmap-xxxhdpi_ic_launcher.png.flat --manifest AndroidManifest.xml -I /opt/android-sdk/platforms/android-26/android.jar -o javasrv2.apk --auto-add-overlay
AndroidManifest.xml:2: error: attribute android:compileSdkVersion not found.
error: failed processing manifest.

这是清单,正如你所看到的属性 android:compileSdkVersion 明确定义:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.javasrv"
android:minSdkVersion="23"
android:compileSdkVersion="26"
android:targetSdkVersion="26"
android:versionCode="6"
android:versionName="1.0.0">
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>

    <application xmlns:android="http://schemas.android.com/apk/res/android" android:icon="@mipmap/ic_launcher" android:label="@string/app_name">
                                <activity android:name="com.javasrv.MainActivity" android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
                          <service android:name=".MyTestService">
                                </service>
        <service android:name=".MyJobService" android:permission="android.permission.BIND_JOB_SERVICE">
                                        </service>
                                <receiver android:name="Boot">
                                                <intent-filter>
                                                                <action android:name="android.intent.action.BOOT_COMPLETED"/>
                                                </intent-filter>
                                </receiver>
    </application>

</manifest>

怎么会呢?

编辑:在AndroidManifest.xml.使用xmllint没有运气。然后我刚刚从清单中删除了android: compileSdkVersion。它链接成功了。我很困惑。

共有1个答案

吕鸿轩
2023-03-14

android:compileSdkVersion好像只有gradle在用。在AndroidManifest.xml本身的标记中,应该按照文档中的说明使用-sdk。

 类似资料: