环境:mac os 10.12.6;android studio 3.0.1
1.安装python
1)要安装Homebrew,打开Terminal
或您喜欢的OSX终端模拟器并运行下面的命令:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2)该脚本将解释它将进行的更改,并在安装开始之前提示您。安装Homebrew后,将Homebrew目录插入到您的主页PATH
环境变量。您可以通过在~/.profile
文件添加以下行来完成此操作:
export PATH="/usr/local/opt/python/libexec/bin:$PATH"
如果您有OS X 10.12(Sierra)或更早版本,请改用此行
export PATH=/usr/local/bin:/usr/local/sbin:$PATH
3)现在,我们可以安装Python 3:
$ brew install python
如果报错说:已经存在,说明之前安装过,运行下面的命令:
brew uninstall python3
brew cleanup -s
brew install python3
4)等待所有下载完成,下载很慢,下载完成后是自动安装,安装后运行:
python --version
能看到版本号,说明python安装完成
2.android studio创建并运行第一个python 程序
1)Android Studio下载插件“Python Community Edition”。允许在Python文件中使用IDE功能,如语法突出显示
打开Android Studio,单击Configure
菜单,然后单击Plugins
选项:
2)进入Plugins
并单击。Install JetBrains plugin...
3)搜索Python Community Edition
Install
,选择插件,和点击
4)插件安装完成后,单击 Restart Android Studio
5)点击 Start a new Android Studio project 创建项目
一直点“下一步”
6)打开通过单击项目窗口选择顶部的下拉菜单。Project View
Project
7)导航到PythonActivity/app/src/main/java/demo.chaquopy.pythonactivity
&删除MainActivity.java
。
8)取消选中对话框的Safe delete
9)接下来,我们需要创建Python活动所需的一些目录和文件
10)创建以下所有目录和文件:
目录:
PythonActivity/app/src/main/python
PythonActivity/app/src/main/python/demo
PythonActivity/app/src/main/python/demo/chaquopy
PythonActivity/app/src/main/python/demo/chaquopy/pythonactivity
文件:
PythonActivity/app/src/main/python/__init__.py
PythonActivity/app/src/main/python/demo/__init__.py
PythonActivity/app/src/main/python/demo/chaquopy/__init__.py
PythonActivity/app/src/main/python/demo/chaquopy/pythonactivity/__init__.py
PythonActivity/app/src/main/python/demo/chaquopy/pythonactivity/main_activity.py
11)打开PythonActivity/app/src/main/python/demo/chaquopy/pythonactivity/main_activity.py
并添加以下代码:
from demo.chaquopy.pythonactivity import R
from java import static_proxy, Override, jvoid
from android.os import Bundle
from android.support.v7.app import AppCompatActivity
# Python activities require a static_proxy implementation
# in order to generate a Java source file from their contents.
# All files that use static proxies must be defined @ app/build.gradle
class MainActivity(static_proxy(AppCompatActivity)):
# Any methods that will be accessed from Java must implement
# @Override(java_return_type, [method_args])
@Override(jvoid, [Bundle])
def onCreate(self, state):
AppCompatActivity.onCreate(self, state)
self.setContentView(R.layout.activity_main)
12)项目创建好了。配置PythonActivity/build.gradle
并添加以下代码:(chaquo需要收费,免费的5分钟以内,应用会崩溃)
buildscript {
repositories {
...
maven { url "https://chaquo.com/maven" }
}
dependencies {
...
classpath 'com.chaquo.python:gradle:5.0.0'
}
}
allprojects {
...
}
13)配置PythonActivity/app/build.gradle
并添加以下代码:
...
apply plugin: 'com.chaquo.python'
android {
...
python {
buildPython "/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7"
staticProxy "demo.chaquopy.pythonactivity.main_activity"
}
ndk {
abiFilters "armeabi-v7a", "x86"
}
}
...
}
14)打开PythonActivity/app/src/main/AndroidManifest.xml
并更改以下代码:
<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
<application
android:name="com.chaquo.python.android.PyApplication"
...>
<activity android:name=".main_activity.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>
15)(可选)打开PythonActivity/app/src/main/res/layout/activity_main.xml
并更改tools:context
主布局的属性:
"demo.chaquopy.pythonactivity.main_activity.MainActivity"
16)所有已经完成,可以运行
第一个python程序运行成功