私はAndroidStudio 3.3に更新しました。これにより、非推奨のライブラリに関する警告が表示されます。
警告:API 'variant.getExternalNativeBuildTasks()'は廃止され、 'variant.getExternalNativeBuildProviders()'に置き換えられました。 2019年末に削除されます。詳細については、 https://d.Android.com/r/tools/task-configuration-avoidance を参照してください。何がvariant.getExternalNativeBuildTasks()を呼び出しているかを確認するには、コマンドラインで-Pandroid.debug.obsoleteApi = trueを使用してスタックトレースを表示します。影響を受けるモジュール:アプリ
彼らのウェブサイトで提供されるいくつかのより多くの情報があります:
しかし、私はそれを正確に理解していません。彼らが言う:
追加情報を表示するには、プロジェクトのgradle.propertiesファイルに以下を含める必要があります。
Android.debug.obsoleteApi = true
(Project:[my project])でマークされたbuild.gradleを取得しました
ドキュメントは次のようになります。
buildscript {
ext.kotlin_version = '1.3.10'
repositories {
jcenter()
maven {
url 'https://maven.google.com/'
name 'Google'
}
google()
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.3.0'
classpath 'com.google.gms:google-services:4.0.1'
classpath 'com.github.triplet.gradle:play-publisher:1.1.5'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
allprojects {
repositories {
google()
jcenter()
maven {
url "https://jitpack.io"
}
mavenCentral()
}
}
project.ext.preDexLibs = !project.hasProperty('disablePreDex')
subprojects {
project.plugins.whenPluginAdded { plugin ->
if ("com.Android.build.gradle.AppPlugin" == plugin.class.name) {
project.Android.dexOptions.preDexLibraries = rootProject.ext.preDexLibs
} else if ("com.Android.build.gradle.LibraryPlugin" == plugin.class.name) {
project.Android.dexOptions.preDexLibraries = rootProject.ext.preDexLibs
}
}
}
repositories {
mavenCentral()
}
しかし、私は今どこにその行を追加するべきか理解できません。そして、どこに配置しても、常にエラーが発生します。
例えば。最初の行に直接書き込む場合:
タイプorg.gradle.api.Projectのルートプロジェクト[マイプロジェクト]の不明なプロパティ「Android」を取得できませんでした。
これはどこに追加されるのでしょうか?または、gradleファイルの「プロジェクト」と「アプリ」の定義を混在させていますか?
_gradle.properties
_内のアプリフォルダーの外notのプロジェクトレベルで存在する_build.gradle
_ファイルにそれを配置する必要があります現在実行しようとしているファイル。
Android開発者ドキュメントから
廃止されたAPI使用時のデバッグ情報の改善:プラグインは、サポートされなくなったAPIを使用していることを検出すると、そのAPIが使用されている場所を判断するのに役立つより詳細な情報を提供できるようになりました。追加情報を表示するには、プロジェクトのgradle.propertiesファイルに以下を含める必要があります:
Android.debug.obsoleteApi = true
コマンドラインから-Pandroid.debug.obsoleteApi = trueを渡すことでフラグを有効にすることもできます。
あなたはこれをチェックすることができます リンク 。
最も簡単な方法は、Androidプロジェクトのルートにあるterminalで行うことです。
次のコマンドを実行します。
./gradlew -Pandroid.debug.obsoleteApi=true
エラーメッセージに記載されているように、gradle.properties
ファイルとnotのいずれかでbuild.gradle
ファイル