В руководстве используется android.support.constraint.ConstraintLayout, но сейчас он устарел. В соответствии с рекомендациями я пытаюсь перейти на AndroidX.
Это build.gradle.kts уровня проекта:
Код: Выделить всё
buildscript {
repositories {
google()
mavenCentral()
}
}
plugins {
// alias(libs.plugins.android.application) apply false
id("com.android.application") version "8.4.0" apply false
id("com.chaquo.python") version "15.0.1" apply false
id("com.android.library") version "7.3.1" apply false
}
Код: Выделить всё
// alias(libs.plugins.android.application)
id("com.android.application")
id("com.chaquo.python")
}
android {
namespace = "com.example.pythontestwithjavafix"
defaultConfig {
applicationId = "com.example.pythontestwithjavafix"
minSdk = 24
targetSdk = 34
versionCode = 1
versionName = "1.0"
compileSdk = 34
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
ndk{
abiFilters += listOf("arm64-v8a","x86_64")
}
}
buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
buildFeatures {
viewBinding = true
}
}
chaquopy{
defaultConfig{
version = "3.10"
pip{
install("scipy")
install("requests==2.24.0")
}
}
}
dependencies {
implementation(libs.appcompat)
implementation(libs.material)
implementation(libs.constraintlayout)
implementation(libs.navigation.fragment)
implementation(libs.navigation.ui)
testImplementation(libs.junit)
androidTestImplementation(libs.ext.junit)
androidTestImplementation(libs.espresso.core)
// implementation("com.android.support.constraint:constraint-layout:2.0.4")
implementation(libs.constraint.layout)
}
Код: Выделить всё
Код: Выделить всё
Attribute application@appComponentFactory value=(androidx.core.app.CoreComponentFactory) from [androidx.core:core:1.13.0] AndroidManifest.xml:28:18-86
is also present at [com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91 value=(android.support.v4.app.CoreComponentFactory).
Suggestion: add 'tools:replace="android:appComponentFactory"' to element at AndroidManifest.xml:5:5-25:19 to override
Код: Выделить всё
/Users/me/AndroidStudioProjects/PythonTestWithJavaFix/app/src/main/AndroidManifest.xml:5:5-26:19 Error:
tools:replace specified at line:5 for attribute tools:android.appComponentFactory, but no new value specified
/Users/me/AndroidStudioProjects/PythonTestWithJavaFix/app/src/main/AndroidManifest.xml Error:
Validation failed, exiting
Код: Выделить всё
[libraries]
constraint-layout = { module = "com.android.support.constraint:constraint-layout", version.ref = "constraintLayoutVersion" }
Поэтому я не знаю, как действовать дальше.
Подробнее здесь: https://stackoverflow.com/questions/785 ... ld-failing