0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Android App开发新选择:使用Chaquopy轻松结合Python

大大通 2023-04-25 20:29 次阅读

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以上版本。

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

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

3. 进行Sync Now遇到以下错误如何解决?

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

Ans:app里面的build.gradle中defaultConfig区块内的minSdk改成23版本就可以成功

4. 进行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'

5. Chaquopy是否支持使用Python的第三方库?

Ans:有支援,此部分下一篇博文会介绍,近请期待。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 高通
    +关注

    关注

    76

    文章

    7166

    浏览量

    187899
  • python
    +关注

    关注

    51

    文章

    4677

    浏览量

    83468
  • Qualcomm
    +关注

    关注

    8

    文章

    667

    浏览量

    51696
收藏 人收藏

    评论

    相关推荐

    广告电商+超级云APP结合 # 软件开发# 模式开发# 小程序开发# App开发

    软件开发APP
    jf_01576396
    发布于 :2024年04月09日 17:42:13

    Android APP如何进行访问硬件驱动

    本文我们要讲的是在用 i.MX8 平台开发时,Android APP 如何进行访问硬件驱动。
    的头像 发表于 12-04 13:50 475次阅读
    <b class='flag-5'>Android</b> <b class='flag-5'>APP</b>如何进行访问硬件驱动

    Android App环境检测分析

    这个原理就是APPAndroidManifest.xml文件中application是否配置了android:debuggable="true",设置true支持动态调试
    的头像 发表于 12-01 10:26 453次阅读

    如何轻松完成刚柔结合 PCB 弯曲的电磁分析?

    如何轻松完成刚柔结合 PCB 弯曲的电磁分析?
    的头像 发表于 11-27 17:46 242次阅读
    如何<b class='flag-5'>轻松</b>完成刚柔<b class='flag-5'>结合</b> PCB 弯曲的电磁分析?

    【涂鸦T2-U开发板试用体验】涂鸦APP控制板上LED

    本帖最后由 1653149838.791300 于 2023-11-12 22:52 编辑 前面讲了开发环境搭建,那这接着做一个应用:用涂鸦的app控制开发板上LED灯亮灭。这涉及到涂鸦
    发表于 11-12 18:13

    PyJNIus :让你在Python轻松调用Java方法

    是你最好的选择。 1.准备 开始之前,你要确保Python和pip已经成功安装在电脑上,如果没有,可以访问这篇文章: 超详细Python安装指南 进行安装。 如果你用Python的目的
    的头像 发表于 11-01 10:45 404次阅读

    Dynaconf 轻松实现 Python 动态配置管理

    Dynaconf 是一个Python的第三方模块,旨在成为在 Python 中管理配置的最佳选择。 它可以从各种来源读取设置,包括环境变量、文件、服务器配置等。 它适用于任何类型的 Pytho
    的头像 发表于 10-30 15:02 346次阅读

    PyJNIus:在Python轻松调用Java方法

    是你最好的选择。 1.准备 开始之前,你要确保Python和pip已经成功安装在电脑上,如果没有,可以访问这篇文章: 超详细Python安装指南 进行安装。 如果你用Python的目的
    的头像 发表于 10-30 11:32 283次阅读

    学习Python的双重选择: 树莓派和行空板

    Python是一种流行并简单和易用的编程语言, 吸引了众多初学者和专业开发人员。许多人选择使用树莓派(Raspberry Pi)作为学习Python的工具,因为它体积小、价格实惠,并且
    的头像 发表于 09-08 13:53 339次阅读

    python有什么用 如何用python创建数据库

    开发、游戏开发、机器学习、自然语言处理等领域。 在本文中,我们将介绍如何使用Python创建数据库。首先,让我们了解一下什么是数据库。 什么是数据库? 数据库是一种用于存储、管理和检索数据的软件系统。它们使我们能够
    的头像 发表于 08-28 16:41 789次阅读

    【Milk-V Duo 开发板免费体验】Python开发环境搭建

    和RTOS的操作系统。收到后的开箱图如下: 由于开发环境是基于linux的,而本机没有linux操作系统,安装虚拟机比较麻烦,且占据大量硬盘空间,因此选择阿里云的云主机作为开发平台,按小时方式租用,最低的配置
    发表于 08-06 15:49

    Arduino Android APP来控制8个继电器

    电子发烧友网站提供《Arduino Android APP来控制8个继电器.zip》资料免费下载
    发表于 07-10 10:48 1次下载
    Arduino <b class='flag-5'>Android</b> <b class='flag-5'>APP</b>来控制8个继电器

    使用Teachable Machine和Python轻松进行对象检测

    电子发烧友网站提供《使用Teachable Machine和Python轻松进行对象检测.zip》资料免费下载
    发表于 06-27 09:26 0次下载
    使用Teachable Machine和<b class='flag-5'>Python</b><b class='flag-5'>轻松</b>进行对象检测

    Android12 系统开发记录-迅为RK3588使用ADB工具

    “iTOP-3588 开发板\\\\02_【iTOP-RK3588 开发板】开发资料\\\\ 07_Android 系统开发配套资料\\\\
    发表于 06-13 11:30

    基于MATLAB App Designer的串口RS485 Modbus上位机

    上学那会儿MATLAB还没有App Designer,记得当时开发了一个基于MATLAB的计算器。最近,由于项目需要一个简单的上位机做监控,结合自身实际,拟定了以下三种方案: 1. PyQt5
    发表于 05-29 16:03 8次下载
    基于MATLAB <b class='flag-5'>App</b> Designer的串口RS485 Modbus上位机