今天我想来试试kivy那个之前看起来相当复杂的打包安apk的方法。

先找到官网上的教程:http://kivy.org/docs/guide/packaging-android.html?highlight=android

步骤都是参照它上面说的,我的linux是mint 13 xfce 64bit,基于ubuntu12.04的,应该是可以。

1、首先是一长串的apt-get install

  我整理i一下,大概是这个样子:

sudo apt-get install build-essential patch git-core ccache ant python-pip python-dev build-essential patch git-core ccache ant python-pip python-dev ia32-libs and libc6-dev-i386 lib32stdc++6 lib32z1

2、然后是确定cython为最新版本:

pip install --upgrade cython

3、下载sdk和ndk

http://developer.android.com/sdk/index.htmlhttp://developer.android.com/sdk/ndk/index.html

  我现在下载的sdk是api 17了,带eclipse的,ndk是r8e

4、配置sdk和ndk的环境变量

  按照教程用export命令貌似只能在一个终端窗口有效,关闭这个窗口后就不能用了。所以找了个一直有效的方法:编辑/etc/profile

sudo gedit /etc/profile

然后将这段添加在文件位部:

export ANDROIDSDK="/home/wind/code/android-sdk"
export ANDROIDNDK="/home/wind/code/android-ndk-r8e"
export ANDROIDNDKVER=r8e
export ANDROIDAPI=17

export PATH=$PATH:$ANDROIDNDK:$ANDROIDSDK/tools:$ANDROIDSDK/platform-tools

因为adb命令已经从sdk的tools目录转移到platform-tools目录了,所了把platform-tools目录也添加进去。

 注销后才能生效,可以用echo $PATH 命令看生效没。

哦,差点忘了,如果是第一次使用sdk,还需要做一个avd的虚拟机。用来之后测试运行吧可能。

5、下载python-for-android

教程上是用git clone,我怕麻烦,直接去https://github.com/kivy/python-for-android 把zip文件下载下来,解压就行了。

6、创建自己的distribution

cd到python-for-android目录后

./distribute.sh -m "kivy"

 出来的结果是这样的:

Module pygame have invalid md5, redownload.
Downloading http://pygame.org/ftp/pygame-1.9.1release.tar.gz
--2013-06-07 16:07:50-- http://pygame.org/ftp/pygame-1.9.1release.tar.gz
Resolving pygame.org (pygame.org)... failed: Name or service not known.
wget: unable to resolve host address `pygame.org'

靠啊,pygame.org不能访问了,然后就没有下文了……

 ………………………………………………………………………………

再试了几次居然就能访问了,正在下载中……