使用 chaquopy 开发的应用程序会在部署时产生问题吗?
Will apps developed using chaquopy create issues while deployment?
我想在 android Studio 中使用 chaquopy 进行 java/kotlin 和 python 代码之间的通信。下面显示的是我的构建 gradle 文件:
plugins {
id 'com.android.application'
id 'com.chaquo.python'
}
android {
compileSdkVersion 30
buildToolsVersion "30.0.3"
defaultConfig {
applicationId "com.example.image_processing_using_chaquopy"
python{
pip{
install "numpy"
install "opencv-contrib-python-headless"
install "pillow"
}
}
sourceSets{
main{
python{
srcDirs = ["src/main/python"]
}
}
}
minSdkVersion 16
targetSdkVersion 30
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
ndk {
abiFilters "armeabi-v7a", "x86"
}
python{
buildPython "C:/Users/hp/AppData/Local/Programs/Python/Python39/python.exe"
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
implementation 'androidx.appcompat:appcompat:1.3.0'
implementation 'com.google.android.material:material:1.4.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}
在这里,我们给出了 python.exe 本地路径,而 chaquopy 也没有在依赖项中列出。在 android 手机或其他一些外部设备上部署此应用程序时会导致任何问题吗?
Here, we are giving the python.exe local path
这只影响构建过程:运行时不使用此路径。事实上,即使我们愿意,它也不能在运行时使用,因为 Android 应用程序无法直接访问您计算机的文件系统,即使您使用的是模拟器也是如此。
但是,为了让其他开发人员更容易构建您的源代码,最好删除 buildPython
行并允许 Chaquopy 在 PATH 上找到 Python,正如它所说在 the documentation。如果您使用默认设置从 python.org 安装 Python,那么 py
启动器将已经在 PATH 上,因此它会自动运行。
chaquopy is not listed in the dependencies too
没问题:文件顶部的 Chaquopy 插件将添加任何必要的依赖项。
我想在 android Studio 中使用 chaquopy 进行 java/kotlin 和 python 代码之间的通信。下面显示的是我的构建 gradle 文件:
plugins {
id 'com.android.application'
id 'com.chaquo.python'
}
android {
compileSdkVersion 30
buildToolsVersion "30.0.3"
defaultConfig {
applicationId "com.example.image_processing_using_chaquopy"
python{
pip{
install "numpy"
install "opencv-contrib-python-headless"
install "pillow"
}
}
sourceSets{
main{
python{
srcDirs = ["src/main/python"]
}
}
}
minSdkVersion 16
targetSdkVersion 30
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
ndk {
abiFilters "armeabi-v7a", "x86"
}
python{
buildPython "C:/Users/hp/AppData/Local/Programs/Python/Python39/python.exe"
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
implementation 'androidx.appcompat:appcompat:1.3.0'
implementation 'com.google.android.material:material:1.4.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}
在这里,我们给出了 python.exe 本地路径,而 chaquopy 也没有在依赖项中列出。在 android 手机或其他一些外部设备上部署此应用程序时会导致任何问题吗?
Here, we are giving the python.exe local path
这只影响构建过程:运行时不使用此路径。事实上,即使我们愿意,它也不能在运行时使用,因为 Android 应用程序无法直接访问您计算机的文件系统,即使您使用的是模拟器也是如此。
但是,为了让其他开发人员更容易构建您的源代码,最好删除 buildPython
行并允许 Chaquopy 在 PATH 上找到 Python,正如它所说在 the documentation。如果您使用默认设置从 python.org 安装 Python,那么 py
启动器将已经在 PATH 上,因此它会自动运行。
chaquopy is not listed in the dependencies too
没问题:文件顶部的 Chaquopy 插件将添加任何必要的依赖项。