Android App開發新選擇:使用Chaquopy輕鬆結合Python

1.  前言

當今的程式開發中,Python已經成為了一個非常流行的語言,因為它可以快速編寫出高效的代碼。然而,如果要將Python結合到Android App(應用程式)中,需要進行一些複雜的設置和調整。Chaquopy是一個可以幫助開發者在Android App中輕鬆使用Python代碼的工具。本文將介紹如何安裝Chaquopy,讓你的Android App更加強大。 

2.  Android Studio搭配Chaquopy環境建置

以下環境是在Windows 10下建置。

a.  根目錄settings.gradle文件添加。(圖1)

maven { url "https://chaquo.com/maven" }​

 

圖1

 b.   專案內的build.gradle添加。(圖2) 
id 'com.chaquo.python' version '14.0.2' apply false

 

圖2

 c.  app內build.gradle檔案中plugins區塊添加。(圖3)

id 'com.chaquo.python'

 

圖3

 d.  然後在app裡面的build.gradle中defaultConfig區塊添加。(圖4)
ndk {
abiFilters "armeabi-v7a", "arm64-v8a", "x86", "x86_64"
}

 

圖4

e.  配置python環境,此教學使用windows環境進行建置,因此需要依照個人電腦中python配置路徑進行修改,如果沒有安裝python,請自行安裝。

在app裡面的build.gradle中defaultConfig區塊添加。(圖5)

python {
buildPython "C:/Users/User/AppData/Local/Programs/Python/Python38/python.exe"

}​

 

圖5

 f.  最後Android Studio畫面上會出現提示框,點擊Sync Now就可進行同步,完成之後,Chaquopy套件就成功加入項目內了。(圖6)

 

圖6

3.  Android內使用 python


a.  在app內àsrcàmain新增python資料夾,資料夾內在新增一個hello_python.py檔案。(圖7)

圖7

 b.  hello_python.py檔案內添加以下文字。

def Python_say_Hello():
print("Hello Python")​

c.  MainActivity檔案內增加調用python代碼,調用python代碼需要引用相關程式庫。(圖8)

import com.chaquo.python.Python;
import com.chaquo.python.PyObject;
import com.chaquo.python.android.AndroidPlatform;



//初始化python環境

if(!Python.isStarted()){
Python.start(new AndroidPlatform(this));
}
Python python=Python.getInstance();

//調用hello_python.py裡面的Python_say_Hello函式

PyObject pyObject=python.getModule("hello_python");
pyObject.callAttr("Python_say_Hello");​

 

圖8

 d.  最後執行Run app既可成功使用,可以在Logcat中看到python输出。(圖9)

 

圖9

結語

透過以上的教學,相信各位已經能夠成功透過Android Studio將Chaquopy建置成功;使用Chaquopy,各位可以輕鬆地將Python代碼整合至你的Android App中,從而實現更複雜的功能。如果你是一個Android App開發者,建議你試試Chaquopy,體驗它帶來的好處,有問題的看官們歡迎聯繫我,我們一同討論。 

喜歡我的帖子,請幫我按個”收藏”,我們下回見。


Q&A

  1. Chaquopy支持哪些Python版本?

 Ans:Chaquopy支持Python 2.7和Python 3.3以上版本。

  1. Chaquopy支援的Android API版本是哪些?

Ans:Chaquopy支援Android 4.4(API level 19)及以上版本。

  1. 進行Sync Now遇到以下錯誤如何解決?

debug: This version of Chaquopy requires minSdkVersion 21 or higher.

Ans:app裡面的build.gradle中defaultConfig區塊內的minSdk改成23版本就可以成功

  1. 進行Run app,遇到以下錯誤如何解決?

Dependency 'androidx.appcompat:appcompat-resources:1.6.1' requires 'compileSdkVersion' to be set to 33 or higher.

Ans: app裡面的build.gradle中dependencies區塊內implementation 'androidx.appcompat:appcompat:1.6.1'改成implementation 'androidx.appcompat:appcompat:1.1.0'

  1. Chaquopy是否支持使用Python的第三方庫?

Ans:有支援,此部份下一篇博文會介紹,近請期待。

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論

花哈哈

花哈哈

11 個月前
感謝提醒,圖一補上網址,您在看看是否看的到圖片,謝謝。 https://edit.wpgdadawant.com/uploads/news_file/blog/temp_folder/885_1685495405/tinymce/_________1.jpg
小貓

小貓

11 個月前
您好,您的圖一有誤