将安卓手机打造成你的python全栈开发利器

简介: Termux应运而生....Termux不仅当做我们的python开发者桌面使用,更可以通过安装各种插件,帮助你学习和使用Linux系统。有些人会问,为什么要死磕在手机上开发python呢,因为太多的IT公司出于保密与安全考虑,内外网隔离,切不允许自带电脑入场...

我需要从源头上找到一款真的可以解决此问题的工具。

再者来说,Qpython顶多算是一个python的手机简单编辑器,想将手机打造成python开发环境,那么Qpython还差的太远了....

所以,Termux应运而生....

Termux不仅当做我们的python开发者桌面使用,更可以通过安装各种插件,帮助你学习和使用Linux系统。有些人会问,为什么要死磕在手机上开发python呢,因为太多的IT公司出于保密与安全考虑,内外网隔离,切不允许自带电脑入场...


Termux介绍


Termux是一个Android终端的Linux环境仿真器。主要的是它无需root,就可以直接进行安装使用。可以使用apt包管理器或者这个工具推荐的pkg命令来定制安装其他的工具。何为其他工具?Linux下你能想到的工具,都可以去尝试,多数都可以直接安装,但也有部分工具需要你转个弯,比如在手机中安装mysql数据库!

Termux的Wiki官网:https://wiki.termux.com/wiki/Main_Page

网络异常,图片无法展示
|

Termux的Wiki

官网中可以看到推荐的下载方式时Google Play 和F-Droid。Google Play在手机上安装太麻烦了,所以推荐F-Droid,虽然它比较慢...当然你可以离线下载Termux的apk文件,虽然这样没办法获取更新。安装果果橙比较简单,下载F-Droid,完成安装后搜索Termux,下载即可。


Python开发者桌面


刚才说到Termux的简单介绍与下载方式,那么下载完成,安装的只是这个工具,而非我们的Python开发者桌面。Termux安装完成首次进入会进行相关的初始化工作,等待1-2分钟即可(此时需要联网下载工具)。截图如下:

网络异常,图片无法展示
|

安装Termux.png

之后就该进入我们的DIY时间了!


更新源:

为了我们能获取到最新的插件信息,需要更新一下镜像源列表

pkg update
pkg upgrade
pkg install python python-dev

安装python及pip

系统为我们安装了最新的python3.7.4版本,紧追时尚潮流....

pkg install python python-static
pip install --upgrade pip

安装依赖插件

这一步阻塞了很长的时间,可以看到网上针对lxml的安装不管是linux系统还是咱们的Termux,都存在这很多的求助帖。


网络异常,图片无法展示
|

lxml安装报错


按照很多热心网友的回答去尝试安装插件,和其他解决办法,都没有成功。

多数的报错是提示libxml2插件未安装,可明明安装了,之后查阅资料了解python在使用该插件的使用需要通过clang插件的编译后才能使用,但是安装后有提示conv.h的文件无法获取等等。这个问题断断续续卡了我两天你的时间,光卸载安装Termux就搞了几次,每月20G的流量我就剩5G了...最终找齐了所有插件总结给大家:

pkg install libxml2 libxslt libiconv  libllvm clang  libzmq libc++ 
pip install lxml

网络异常,图片无法展示
|

lxml安装成功


目录说明:

首先我们输入termux-setup-storage将手机目录共享给termux,完成后会在home目录下多出一个storage的文件夹。

网络异常,图片无法展示
|

目录说明


了解Linux的朋友应该比较清楚创建链接与挂载点的问题,手机的目录在Termux的/data/data/com.termux/files/home/storage/shared内。那么同样的,我们可以将手机的代码目录映射到Termux中。命令如下:

ln -s /data/data/com.termux/files/home/storage/shared/Codes_Repository ~/Codes

然后,我们将小说下载器的脚本Novels.py丢到手机的Codes_Repository,再去Termux中看看是否同步

网络异常,图片无法展示
|

目录共享


无意中暴露了我的Mate 20X,哈哈...之所以当时要买7.2英寸的20x就是为了将手机打造成python开发工具。


优化编辑器

大家都知道Linux环境下开发python,大神们都推荐的是vi,用其他的工具都闲的不高端...

那么如何优化我们的编辑器呢?安装vi的哥哥vim,针对vim下开发python安装vim-python 代码

# 安装vim vim-python
pkg install vim vim-python
# 创建vim配置文件
vim .vimrc
# 添加 vim 配置文件
set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1
set enc=utf8
set fencs=utf8,gbk,gb2312,gb18030
# 保存
:wq
# 立即生效
source .vimrc

编辑器效果展示

来看看vim-python的编码效果:


网络异常,图片无法展示
|

vim-python

网络异常,图片无法展示
|

vim-python


代码运行

怎么样,对于原生的vim来说,展示效果还算不错吧....那么是不是花架子?试试便知


网络异常,图片无法展示
|

模块安装与使用


可以看到,第一次运行提示确实requests模块,通过pip安装后,再次执行,完美...


Termux下使用git

既然要做成python开发者桌面怎么能少了git工具的使用?

pkg install git
git config --global user.name "Usernam"
git config --global user.email  "email-addr"
git clone https://github.com/KingUranus/FlaskTests.git

网络异常,图片无法展示
|

Git


网络异常,图片无法展示
|

image.png


网络异常,图片无法展示
|

image.png


现在我们从手机上下载代码,进行安装...

# 如果为安装pipenv,需要先进行安装操作
pip install pipenv
# 克隆代码
git clone https://github.com/BreezePython/WeatherForecast.git
# 进入代码目录
cd WeatherForecast
# 安装虚拟机及依赖模块
pipenv install
# 进入虚拟机
pipenv shell
# 启动flask
flask run

从安装到使用,你无需关注虚拟环境到底涉及什么模块,需要怎么安装,没错pipenv就是这么简单粗暴+无脑!放几张图吧:


网络异常,图片无法展示
|

下载代码与安装虚拟环境


别说,安装的这个小蛇还挺可爱的....


网络异常,图片无法展示
|

安装插件并启动flask


最终看看手机运行是否正常吧:

网络异常,图片无法展示
|

手机运行

你说这工具,是不一顿操作猛如虎,看得我自己的害怕啊,哈哈....


The End


OK,今天的内容就到这里




相关文章
|
5天前
|
IDE Android开发 iOS开发
探索Android与iOS开发的差异:平台选择对项目成功的影响
【9月更文挑战第27天】在移动应用开发的世界中,Android和iOS是两个主要的操作系统平台。每个系统都有其独特的开发环境、工具和用户群体。本文将深入探讨这两个平台的关键差异点,并分析这些差异如何影响应用的性能、用户体验和最终的市场表现。通过对比分析,我们将揭示选择正确的开发平台对于确保项目成功的重要作用。
|
18天前
|
Android开发 开发者 Kotlin
探索安卓开发中的新特性
【9月更文挑战第14天】本文将引导你深入理解安卓开发领域的一些最新特性,并为你提供实用的代码示例。无论你是初学者还是经验丰富的开发者,这篇文章都会给你带来新的启示和灵感。让我们一起探索吧!
|
3天前
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。
|
17天前
|
前端开发 JavaScript 关系型数据库
基于Python+Vue开发的大学竞赛报名管理系统
基于Python+Vue开发的大学竞赛报名管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的大学竞赛报名管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
33 3
基于Python+Vue开发的大学竞赛报名管理系统
|
1天前
|
开发框架 移动开发 Android开发
安卓与iOS开发中的跨平台解决方案:Flutter入门
【9月更文挑战第30天】在移动应用开发的广阔舞台上,安卓和iOS两大操作系统各自占据半壁江山。开发者们常常面临着选择:是专注于单一平台深耕细作,还是寻找一种能够横跨两大系统的开发方案?Flutter,作为一种新兴的跨平台UI工具包,正以其现代、响应式的特点赢得开发者的青睐。本文将带你一探究竟,从Flutter的基础概念到实战应用,深入浅出地介绍这一技术的魅力所在。
16 7
|
5天前
|
开发框架 前端开发 Android开发
安卓与iOS开发中的跨平台解决方案
【9月更文挑战第27天】在移动应用开发的广阔天地中,安卓和iOS两大操作系统如同双子星座般耀眼。开发者们在这两大平台上追逐着创新的梦想,却也面临着选择的难题。如何在保持高效的同时,实现跨平台的开发?本文将带你探索跨平台开发的魅力所在,揭示其背后的技术原理,并通过实际案例展示其应用场景。无论你是安卓的忠实拥趸,还是iOS的狂热粉丝,这篇文章都将为你打开一扇通往跨平台开发新世界的大门。
|
2天前
|
缓存 Java Linux
探索安卓开发:从新手到专家的旅程
【9月更文挑战第30天】在这篇文章中,我们将一起踏上一段激动人心的旅程,探索安卓开发的广阔世界。无论你是刚入门的新手,还是希望提升技能的开发者,本文都将为你提供宝贵的知识和指导。我们将深入探讨安卓开发的基础知识、关键概念、实用工具和最佳实践,帮助你在安卓开发领域取得更大的成功。让我们一起开启这段精彩的旅程吧!
|
2天前
|
监控 安全 Java
Kotlin 在公司上网监控中的安卓开发应用
在数字化办公环境中,公司对员工上网行为的监控日益重要。Kotlin 作为一种基于 JVM 的编程语言,具备简洁、安全、高效的特性,已成为安卓开发的首选语言之一。通过网络请求拦截,Kotlin 可实现网址监控、访问时间记录等功能,满足公司上网监控需求。其简洁性有助于快速构建强大的监控应用,并便于后续维护与扩展。因此,Kotlin 在安卓上网监控应用开发中展现出广阔前景。
7 1
|
5天前
|
Linux Android开发 iOS开发
开源的Python库,用于开发多点触控应用程序
Kivy是一款开源Python库,专为开发多点触控应用设计,支持Android、iOS、Linux、OS X和Windows等平台。本文将指导你使用Kivy创建“Hello World”应用并打包成Android APK。首先通过`pip install kivy`安装Kivy,然后创建并运行一个简单的Python脚本。接着,安装Buildozer并通过`buildozer init`生成配置文件,修改相关设置后,运行`buildozer -v android debug`命令打包应用。完成构建后,你将在`./bin/`目录下找到类似`your-app-debug.apk`的文件。
12 2
|
13天前
|
Android开发 开发者
安卓开发中的自定义视图:从入门到精通
【9月更文挑战第19天】在安卓开发的广阔天地中,自定义视图是一块充满魔力的土地。它不仅仅是代码的堆砌,更是艺术与科技的完美结合。通过掌握自定义视图,开发者能够打破常规,创造出独一无二的用户界面。本文将带你走进自定义视图的世界,从基础概念到实战应用,一步步展示如何用代码绘出心中的蓝图。无论你是初学者还是有经验的开发者,这篇文章都将为你打开一扇通往创意和效率的大门。让我们一起探索自定义视图的秘密,将你的应用打造成一件艺术品吧!
34 10

推荐镜像

更多
下一篇
无影云桌面