次の特定のエラーが発生します、
E:\SDK\ndk-bundle\build\core\setup-app-platform.mk
エラー:(115)*** Android NDK:Aborting。Stop。Error:Execution failed for task ':un7Zip:compileReleaseNdk'。
com.Android.ide.common.process.ProcessException:プロセスE:\ sdk\ndk-bundle\ndk-build.cmdを引数{NDK_PROJECT_PATH = null APP_BUILD_SCRIPT = E:\ appRizort\RizortCardboard\un7Zip\build\intermediatesで実行中にエラーが発生しました\ ndk\release\Android.mk APP_PLATFORM = Android-25 NDK_OUT = E:\ appRizort\RizortCardboard\un7Zip\build\intermediates\ndk\release\obj NDK_LIBS_OUT = E:\ appRizort\RizortCardboard\un7Zip\build\intermediates\ndk\release\lib APP_ABI = armeabi-v7a、armeabi、x86、arm64-v8a}
NDK_PROJECT_PATHがnullです。プロジェクトフォルダーへのパスに空白が含まれていると、この問題が発生する可能性があります。
APP_PLATFORM
プロジェクトのネイティブ部分をNDKでビルドするときに指定することは非常に重要です。ストーリーは NDKガイドで詳しく説明されています :
この変数には、サポートする最小バージョンAndroidプラットフォームバージョンが含まれています。たとえば、
Android-15
の値は、ライブラリが以下で利用できないAPIを使用することを指定しますAndroid 4.0.3(APIレベル15)で、より低いプラットフォームバージョンを実行しているデバイスでは使用できません。プラットフォーム名と対応するAndroidシステムイメージの完全なリストについては、=を参照してください。 Android NDK Native APIs 。このフラグを直接変更するのではなく、minSdkVersionプロパティを モジュールレベルのbuild.gradleファイル の
defaultConfig
またはproductFlavors
ブロックに設定する必要があります。これにより、適切なバージョンのAndroidを実行しているデバイスにインストールされているアプリのみがライブラリを使用できるようになります。 ndk-buildツールチェーンは、次のロジックを使用して、ビルドするABIおよび指定するminSdkVersion
に基づいて、ライブラリの最小プラットフォームバージョンを選択します。
minSdkVersion
に等しいABIのプラットフォームバージョンが存在する場合、ndk-buildはそのバージョンを使用します。- それ以外の場合、ABIの
minSdkVersion
より前のプラットフォームバージョンが存在する場合、ndk-buildはそれらのプラットフォームバージョンの最高のものを使用します。プラットフォームのバージョンがない場合、通常、以前の利用可能なバージョン以降、ネイティブプラットフォームAPIに変更がなかったことを意味するため、これは妥当な選択です。- それ以外の場合、ndk-buildは
minSdkVersion
よりも高い次の利用可能なプラットフォームバージョンを使用します。
NDKには個別のAndroid-25
プラットフォームはありません。サポートされている最小プラットフォームがOの場合は、Android-24
または(r15ベータ版の場合)Android-26
を選択できます。minSdkVersion
が少ない場合、またはNDKのプラットフォームが低い場合、NDKプラットフォームは上位互換性があるためです。