最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • python可以开发ios吗

    正文概述    2020-06-01   212

    对,你没有看错,就是使用Python开发iOS程序!

    我们见过使用JS、Lua、Ruby开发iOS程序的,但是基本没有见过使用Python开发iOS程序(软件)的,这是为什么?关于这个问题,我后面会回答。

    python可以开发ios吗

    那么,怎么用Python开发iOS程序呢?

    其实我们最主要解决的就是下面几件事情:

    在iOS App中安装Python解释器。

    搭建Python和objc通信的桥梁。

    如何配置工程并开发。

    如果不使用UIKit这些,那么就要使用OpenGL ES这些了,这种方式,主要是用于开发游戏的,我们这里不涉及这些。

    当然,以下所有内容都是在一台已经安装了Xcode的Mac上进行的。

    在iOS App中安装Python解释器

    Python-iOS-support

    pybee开源了一个可以嵌入到iOS工程中的Python编译脚本,具体位置在这:

    https://github.com/pybee/Python-iOS-supp...

    默认是使用Python 3.4.2,编译x86_64、i386、ARMv7、ARMv7s、ARM64共5个版本,然后打成一个臃肿包,可选framework或者.a。

    如果真的要用于生产环境的话,只要把Makefile中的

    TARGETS-iOS=iphonesimulator.x86_64 iphonesimulator.i386 iphoneos.armv7 iphoneos.armv7s iphoneos.arm64

    修改为:

    TARGETS-iOS=iphoneos.armv7 iphoneos.arm64

    我们只需要支持ARMv7和ARM64即可,ARMv7s可以兼容ARMv7,所以可以让包小一些。

    修改Python版本的地方在:

    PYTHON_VERSION=3.4.2

    替换为需要版本即可。                                                                                                                                                                         

    编译

    切到Python-iOS-support目录,设置编译参数,直接编译。我们这只需要iOS版本,所以直接make iOS即可。

    编译成功之后,会在build目录上生成Python.framework和OpenSSL.framework。

    搭建Python和objc通信的桥梁

    rubicon-objc是一个连接Python和objc的桥梁。

    首先,我们需要安装一下:

    pip install rubicon-objc

    调用objc的方式和以前objc直接的写法很像,只是有一些需要改变,比如:

    方法名不使用:,而是使用_。

    多参数需要使用Python的方式

    如何配置工程并开发

    创建工程

    Python所需要的工程和直接用Xcode创建的不太一样,手动改写的话,还比较麻烦,所以我们直接用模板工具生成。

    cookiecutter是一个可以在模板中快速创建工程的一个工具,Python-iOS-template是pybee开源的一个使用Python开发iOS工程的模板。

    首先,我们需要安装cookiecutter,直接使用pip安装即可:

    pip install cookiecutter

    创建完工程生成的目录:

    app目录是放置我们创建的python文件的地方。

    app_packages目录是放三方包的地方,等同于我们在电脑端的site_packages文件夹。

    工程里面可以同时存在objc文件和python文件,两者可以各自运行,并不冲突。                                                                                   


    起源地下载网 » python可以开发ios吗

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元