11

我有以下 Application.mk

APP_PLATFORM := android-9
APP_STL := gnustl_static
APP_CPPFLAGS := -frtti -fexceptions -O2 -mfpu=neon -mfloat-abi=softfp
APP_ABI := armeabi-v7a
LOCAL_ARM_NEON := true

并且在运行 ndk-build 时,我总是会收到警告:

Invalid attribute name: 
    package
/Users/tmanthey/Documents/android/android-ndk-r8d/build/core/add-application.mk:128: Android NDK: WARNING: APP_PLATFORM android-14 is larger than android:minSdkVersion  in ./AndroidManifest.xml    
Invalid attribute name: 
    package

这是我的 AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.evotegra.aCoDriver"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="9" android:targetSdkVersion="17" />

    <uses-permission android:name="android.permission.CAMERA" />

    <uses-feature android:name="android.hardware.camera" />
    <uses-feature android:name="android.hardware.camera.autofocus" />

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.VIBRATE"/>

    <application
        android:name=".ACoDriverApp"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" android:allowBackup="true">
        <activity
            android:name=".ACoDriverActivity"
            android:label="@string/app_name" android:launchMode="singleTask">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name="PreferencesActivity" />
        <activity android:name="GaugeSelectActivity" />
    </application>

</manifest>

我怎样才能摆脱这些警告?

4

3 回答 3

3

关于“包”,这很可能是您的 XML 文件的一些crlf问题。检查那里的行尾字符。project.properties或者,您的文件可能有问题。

APP_PLATFORM 警告实际上是正确的:您的 APP_PLATFORM (android-14) 大于您在 AndroidManifest.xml 中设置的 android:minSdkVersion。这只是提醒您注意这种(合法)情况的警告,因此在某些阶段您决定放弃对非常过时的设备的支持。

于 2013-04-01T22:21:07.027 回答
3

对于 NDK rev r9(也适用于其他人,但行号可能不同)

${NDK}/build/core/add-application.mk 第 138 行

在行首添加“#”。

# $(call __ndk_info,WARNING: APP_PLATFORM $(APP_PLATFORM) is greater than android:minSdkVersion $(APP_MIN_PLATFORM_LEVEL) in $(APP_MANIFEST))

一个字符,30 秒修复……去调试原生代码。

于 2013-09-15T07:50:05.513 回答
1

您可以通过在 Eclipse 中执行以下步骤来解决此问题:

  • 窗口 -> 首选项 -> C/C++ -> 构建 -> 设置
  • 选择 CDT GNU C/C++ 错误解析器
  • 在底部的错误解析器选项中,添加一个包含以下内容的新条目:

严重性:警告

模式: (. ?):(\d+): Android NDK: WARNING:(. )

文件:1美元

线路:2美元

描述:3美元

这应该将其转换为警告,您也可以选择忽略它 - 取决于它将显示在“问题”视图中的严重程度。

于 2013-06-07T13:59:47.883 回答