Android搭建python环境

通过wifi连接adb:

首先下载无线abd工具:

https://www.downkuai.com/android/170494.html

运行效果图:

然后开启后根据自身ip即可连接:

adb connect ip:5555

安装busybox:

首先执行如下命令查看手机架构:

adb shell
cat /proc/cpuinfo

可以看到如图信息: 

 

然后去busybox官网下载busybox: 

https://busybox.net/downloads/binaries/

对应如下表可以发现属于arm64-v8a: 

然后下载对应的armv8al版本即可: 

然后将下载的busybox上传到手机: 

adb push D:\permeate\android\busybox-armv8l /sdcard

上传成功后开始挂载system,使其具有可写权限,这里需要注意android的版本,我是Android10是8以上使用如下方法:

mount -o remount -o rw /

不然回报 mount: '/system' not in /proc/mounts错误:

然后复制 busybox 文件到 /system/xbin,并为其分配“可执行”的权限:

cp /sdcard/busybox-armv8l /system/xbin/  如果没有xbin则新建一个mv busybox-armv8l busyboxchmod 777 busyboxbusybox --install .

执行完成上面的命令后,如果没有报错即可。 

安装termux:

下载地址如下:

https://github.com/termux/termux-app/releases

 安装成功后可以使用pkg安装python3

手机上输入:
pkg install python3 

安装python库报错内容:dlopen failed: library “libexpat.so.1“ not found

pkg upgradepkg install mlocate

手机如果是root环境,可以安装 tsu:

pkg install tsu
tsu

安装完成后需要找到安装路径,可以使用find查找:

find ./ -name python

运行python:

找到路径后就可以运行python脚本,上传你的python脚本,执行即可: 

/data/data/com.termux/files/usr/bin/python3 main.py

如果运行定时任务爆如下错误:

Run time of job "job (trigger: cron[hour='9', minute='53'], next run at: 2024-02-01 09:53:00 CST)" was missed by 0:00:24.830513

定时任务代码需要添加misfire_grace_time

scheduler = BlockingScheduler()
scheduler.add_job(job, 'cron', hour='9', minute='59',misfire_grace_time=60)

放入后台运行:

nohup /data/data/com.termux/files/usr/bin/python3 -u android-main.py >>log.txt &
ps -def | grep "python"

总结:

        安装方法如上所示,其中碰到的bug也做了记录,使用中最好使用root手机,否则权限太低会出很多权限问题。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/663089.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java的JVM学习一

一、java中的内存结构如何划分 栈和堆的区别: 栈负责处理运行,堆负债处理存储。 区域名称作用虚拟机栈用于存储正在执行的每个Java方法,以及其方法的局部变量表等。局部变量表存放了便器可知长度的各种基本数据类型,对象引用&am…

SpringBoot security 安全认证(二)——登录拦截器

本节内容:实现登录拦截器,除了登录接口之外所有接口访问都要携带Token,并且对Token合法性进行验证,实现登录状态的保持。 核心内容: 1、要实现登录拦截器,从Request请求中获取token,从缓存中获…

QT基础篇(20)QT Quick Controls2新颖界面开发

1.QT Quick Controls2简介 QT Quick Controls2是一套用于构建现代风格用户界面的框架,它是QT框架的一部分。它提供了一系列预定义的控件,可以用来创建交互式和响应式的界面,包括按钮、文本框、滑块、菜单等。QT Quick Controls2具有高度可定…

小程序:类型三级分类

一、效果图片 二、代码 <template><view class"customPosition"><!-- header --><navBar :border"false" :hasBack"true" :title"titleName"></navBar><!-- 查询 --><view class"search…

ChatGPT提示“Unauthorized“错误

问题&#xff1a;当出现下图错误时我们应该如何解决&#xff1f; 解决办法一、 退出重新登录 原因&#xff1a;没有正确登录或者登录会话已经过期 解决办法二、 “更换线路” 原因&#xff1a;网络配置或者代理设置会导致认证失败 如果还不行可以叫我看一下 无限使用gpt4教…

手把手教你搭建属于自己的网站(获取被动收入),无需服务器,使用github托管

大家好&#xff0c;我是亚洲著名程序员青松&#xff0c;本次教大家如何搭建一个属于自己的网站。 下面是我自己搭建的一个网站&#xff0c;是一个网址导航网站。托管在了github上面&#xff0c;目前已经运营了三个月&#xff0c;每天的访问量大约有100ip左右。 下图是在51.la上…

猫用空气净化器好吗?好用的养猫宠物空气净化器品牌推荐

作为一个养猫五年的资深铲屎官&#xff0c;我对如何轻松快乐地养猫有一些心得。猫咪每天在家里奔跑&#xff0c;导致家里经常会出现“猫毛雪”&#xff0c;沙发、地板和衣服都成了重灾区。在除猫毛的问题上&#xff0c;我真的尝试了各种方法&#xff0c;几乎用上了所有的技能。…

简单说说-docker网络类型

概述 容器网络是指容器之间或非 Docker 工作负载之间连接和通信的能力。容器默认启用网络&#xff0c;并且可以建立传出连接。容器不知道它所连接的网络类型&#xff0c;容器只能看到带有 IP 地址、网关、路由表、DNS 服务和其他网络详细信息的网络接口。也就是说&#xff0c;…

每日OJ题_算法_模拟①_力扣1576. 替换所有的问号

目录 模拟算法原理 力扣1576. 替换所有的问号 解析代码 模拟算法原理 模拟算法是一种常用的计算机算法&#xff0c;它模拟了实际问题的运行过程&#xff0c;并通过数学模型来预测结果。模拟算法可以应用于各个领域&#xff0c;例如物理、化学、生物、计算机网络等等。 模拟算…

怎么去除图片中不需要的部分?这三种高效方法快来试一下

在数字图像处理的浩瀚世界中&#xff0c;去除图片中不必要部分的任务&#xff0c;宛如一幅细致的画卷&#xff0c;需精心描绘。这些不必要部分&#xff0c;可能是背景、水印、无关紧要物体或错误部分&#xff0c;它们如同图片中的瑕疵&#xff0c;需要被巧妙地修饰或去除。这不…

《每天一分钟学习C语言·十三》

1、清屏函数和暂停函数 头文件stdlib.h system(“cls”); system(“pause”); //暂停函数&#xff0c;按任意键继续 2、动态内存释放的问题 int ** p new int*[3]; p[0] new int(0); p[1] new int(1); p[2] new int(2);先申请一个二级指针内存空间&#xff0c;每个元素是…

09. 配置Eth-Trunk

文章目录 一. 初识Eth-Trunk1.1. Eth-Trunk的概述1.2. Eth-Trunk的优势1.3. Eth-Trunk的模式的优势 二. 实验专题2.1. 实验1&#xff1a;手工模式2.1.1. 实验拓扑图2.1.2. 实验步骤&#xff08;1&#xff09;配置PC机的IP地址&#xff08;2&#xff09;在交换机接口划入VLAN&am…

【Tomcat与网络11】如何自己实现一个简单的HTTP服务器

在前面我们尝试解释Tomcat的理论&#xff0c;但是呢&#xff0c;很多时候那些复杂的架构和设计会让我们眼花缭乱&#xff0c;以至于忽略了最进本的问题——服务器到底是什么&#xff1f;今天我们就用尽量简单的代码实现一个简易的HTTP服务器。 HTTP启动之后要持续监听&#xf…

校园网网络规划与设计——计算机网络实践报告

W...Y的主页 &#x1f60a; 代码仓库分享&#x1f495; 目录 一、设计目的 二、软硬件环境 三、理论基础 四、设计方案 五、网络配置步骤 六、设计过程中出现的问题及相应解决办法 八、参考资料 一、设计目的 深入理解网络工程的三层层次设计模型&#xff1b; 掌握网络…

Python实现GCJ02坐标系向WGS84坐标系的转换

GCJ02坐标系 GCJ-02&#xff08;官方称地形图非线性保密处理算法&#xff0c;俗称火星坐标系、国测局坐标&#xff09;是一种基于WGS-84制定的大地测量系统&#xff0c;由中国大陆国家测绘地理信息局制定。此坐标系所采用的混淆算法会在经纬度中加入看似随机的偏移。 使用GCJ…

ubuntu nginx配置密码访问并下载

nginx配置密码访问_htpasswd: cannot create file-CSDN博客 sudo apt-get install nginx sudo apt install apache2-utils # htpasswd -c /htpasswd/passwd.db test htpasswd -c /etc/nginx/htpasswd.d/nginx_passwd.kibana test # htpasswd -c ccreate 创建文件 # /htp…

2024年美赛数学建模A题思路分析 - 资源可用性和性别比例

# 1 赛题 问题A&#xff1a;资源可用性和性别比例 虽然一些动物物种存在于通常的雄性或雌性性别之外&#xff0c;但大多数物种实质上是雄性或雌性。虽然许多物种在出生时的性别比例为1&#xff1a;1&#xff0c;但其他物种的性别比例并不均匀。这被称为适应性性别比例的变化。…

【Java】阻塞队列

目录 BlockingQueue BlockingQueue接口 三个主要实现类介绍&#xff1a; ArrayBlockingQueue&#xff1a;有界队列 LinkedBlockingQueue&#xff1a;无界队列 SynchronousQueue:同步队列 队列对比 BlockingQueue 对于Queue而言&#xff0c;BlockingQueue是主要的线程安全…

有深浅入数据分析 - 启发法(凭人类的天性做分析)

在做数据分析的时候&#xff0c;往往最优的方法是艰难耗时间的 凭经验处理&#xff0c;迅速做出决策&#xff0c;确识能够奏效&#xff0c;进行数据分析的重要而必要的技能 领导的要求是&#xff1a; 邋遢集的处理方式是&#xff1a; 计量的方式处理 上图的调查问卷可以…

pytorch模型里 safetensors 文件、bin文件和pth文件区别、加载和保存方式

目录 PyTorch模型中的safetensors文件和bin文件区别 safetensors文件 bin文件 结论 区别bin文件和pth文件 1. 文件格式 2. 通用性 3. 期望内容 4. 兼容性和移植性 结论 加载和保存safetensors文件 保存safetensors文件 加载safetensors文件 加载和保存bin文件 保…