當前位置:首頁 » 編程語言 » python開發安卓應用

python開發安卓應用

發布時間: 2022-08-23 00:00:14

❶ 如何用python開發安卓應用 知乎

可以看一下 SL4A,一個基於Android的腳本平台,支持Python。但復雜應用,用腳本開發會很有難度

❷ python能開發安卓app嗎

你好,python語言只能開發一些腳本或者是一樣web網站,它並不能開發安卓app,目前來說能開發安卓app的語言只有兩種,一種是java語言,另一種就是谷歌自己的go語言,在沒有其他的開發語言了。

❸ python可以開發安卓app嗎

可以的,因為很多APP的軟體都是通過這個軟體來進行編制的,所以他比較先進

❹ python可以開發app嗎

python可以開發app嗎?
python是可以開發app的,例如我們可以使用kivy開發安卓APP,Kivy是一套專門用於跨平台快速應用開發的開源框架,使用Python和Cython編寫,對於多點觸控有著非常良好的支持,不僅能讓開發者快速完成簡潔的交互原型設計,還支持代碼重用和部署,絕對是一款頗讓人驚艷的NUI框架。
Kivy的主要架構由Kivy組織開發,並有Python用於Android,Kivy iOS和其它許多函式庫被使用在所有平台。在2012年,Kivy從Python軟體基金會獲得$5000美元補助,用於移植Kivy到Python 3.3。Kivy也支援由Bountysource贊助的樹莓派。
其架構包括所有建造應用程序的元素,例如:
支援許多種輸入,例如滑鼠,鍵盤、觸控式使用者界面(TUIO)和特定操作系統的多重觸控事件,只採用OpenGL ES 2的圖形函式庫,且根基於向量緩沖物件(Vertex Buffer Object)和著色器,支援多點觸控的龐大控制項,一個中間語言(Kv)用來簡化客制控制項的設計。
Kivy改良了PyMT專案,並且推薦給新的專案採用。
相關推薦:《Python教程》以上就是小編分享的關於python可以開發app嗎的詳細內容希望對大家有所幫助,更多有關python教程請關注環球青藤其它相關文章!

❺ python可以寫軟體么怎麼寫

22點24分准時推送,第一時間送達


編輯:技術君 | 來源:youerning



上一篇:

正文


前言

用 Python 寫安卓 APP 肯定不是最好的選擇,目前用Java和 kotlin 寫的居多,但是肯定也是一個很偷懶的選擇,而且實在不想學習 Java,再者,就編程而言已經會的就 Python與Golang(註:Python,Golang水平都一般),那麼久Google了一下Python 寫安卓的 APP 的可能性,還真行。

既然要寫個APP,那麼總得要有個想法吧。其實想做兩個APP來著,一個是自己寫著好玩的,一個是關於運維的。關於運維的APP,設計應該如下

可能長這樣

然後設計應該是這樣。

如果覺得可行的話,評論留言一下你覺得應該寫進這個APP的運維常用命令吧^_^,筆者暫時想到的是top,free -m,df –h,uptime,iftop,iotop,如果有什麼好的想法就狠狠的砸過來吧,筆者到時應該也會把這個寫成一個項目放到github上,大家一起用嘛,開源才是王道,哈哈。

開發安卓APP

我們使用kivy開發安卓APP,Kivy是一套專門用於跨平台快速應用開發的開源框架,使用Python和Cython編寫,對於多點觸控有著非常良好的支持,不僅能讓開發者快速完成簡潔的交互原型設計,還支持代碼重用和部署,絕對是一款頗讓人驚艷的NUI框架。

因為跨平台的,所以只寫一遍代碼,就可以同時生成安卓及IOS的APP,很酷吧。

本文會帶大家寫一個Hello world並瞧一瞧 Python 版的2048的代碼

kivy安裝

環境說明:筆者在用的是Python2.7.10

這里僅介紹windows平台安裝

所有平台參考: https://kivy.org/#download

更新pip,setuptools

python -m pip install --upgrade pip wheel setuptools

然後是安裝所需要的依賴

python -m pip install docutils pygmentspypiwin32 kivy.deps.sdl2 kivy.deps.glew
kivy.deps.gstreamer --extra-index-url https://kivy.org/downloads/packages/simple/

值得注意的是,上面的安卓需要訪問Google,所以請自備梯子,而且kivy.deps.gstreamer這個包比較大(95MB),可以單獨本地安裝,http://pan..com/s/1o7mlxNk

然後就是安裝kivy了

python -m pip install kivy

至此,安裝就已經完畢了,值得注意的是64位系統沒有開啟虛擬化支持,在導入kivy的時候會報錯,如果是64位系統就設置一下機器的BIOS,開啟虛擬化支持吧。

註:這里只是kivy的運行環境,這樣我就能直接在windows機器上直接調試了,怎麼將代碼編譯成APK文件我們會在後面講到。

如果kivy在python中應該就能導入了。

按照世界慣例,我們」hello」一下吧。

新建一個.py文件

from kivy.app import Appfrom kivy.uix.button importButton
class TestApp(App):
def build(self):
return Button(text='Hello,kivy')
TestApp().run()

運行

然後會彈出一個框,大概如下,點擊」hello,kivy」會變顏色

點擊窗口並按「F1」會這個窗口的一些屬性

然後我們回過頭看一看代碼。

##導入App,然後讓TestApp這個類繼承
from kivy.app import App##導入一個Button,運維有這個button,當你點擊的時候才會有所反應
from kivy.uix.button
importButton
###定義類,名字必須是xxxAppclass TestApp(App):
###build一個Button
def build(self):
###返回一個Button,文字內容是「Hello,kivy」
return Button(text='Hello,kivy')
##運行,因為繼承了App,所以才有的run這個方法TestApp().run()

上面就是我們的Hello了

在windows上運行當然沒有什麼太大的意義,怎麼在安卓手機上運行才是我們想要的,

這時我們需要一個編譯環境。

官方說明的環境,如下:

You』ll need:


  • A linux computer or a virtual machine

  • Java

  • Python 2.7 (not 2.6.)

  • Jinja2 (python mole)

  • Apache ant

  • Android SDK

  • 雖然官方提供了一個似乎還不錯的虛擬機鏡像,但是還是有很多內容需要翻出去,所以筆者在這里提供相對而言更加完善的鏡像

    下載地址:http://pan..com/s/1geyAY7x

    注:virtualbox,vmware需自行下載

    root密碼:kivy

    默認使用賬戶kivy,密碼:kivy123

    當然你也可以下載官方鏡像,因為第一次編譯需要去國外下一大堆東西,所以請自行去下載。

    Virtual Machine

    A Virtual Machine with Android SDK and NDK and all otherpre-requisites pre installed to ease apk generation:

  • Kivy Buildozer VM

  • Or select the Torrent

  • 在筆者提供的鏡像里,桌面上有一個dev_and,只要將上面寫的代碼,放入這個文件夾即可(當然也可以在其他目錄,後面會講到)。

    在公眾號Python人工智慧技術後台回復「面試」,獲取騰訊Python面試題和答案。

    cd Desktop/dev_and/

    初始化會在當前目錄生成一個buildozer.spec文件 用於配置生成的apk相關信息

    buildozer init

    ###修改buildozer.spec文件

    vi buildozer.spec

    至少修改下面三項

    # (str) Title of your applicationtitle = helloworld
    # (str) Package namepackage.name = helloapp
    # (str) Package domain (needed for android/ios packaging)package.domain = youer.com

    然後注釋

    # (str) Application versioning (method 1)#version.regex = __version__ = ['"](.*)['"]#version.filename = %(source.dir)s/main.py

    下面這行改為非注釋
    version = 1.2.0

    最後我們生成我們需要的apk文件

    buildozer -v android debug

    buildozer.spec更詳細的相關參數配置參考:

    http://buildozer.readthedocs.org/en/latest/specifications.html

    buildozer命令會在當前文件夾創建一個bin,該文件夾裡面有我們想要的apk文件

    helloapp-1.2.0-debug.apk

    helloapp-1.2.0-debug.apk

    安裝以後是這樣:

    話說在編譯的時候可能出現空間不足的情況,根據虛擬機的不同(vmware或virtualbox)自行擴容吧。

    最後我們來瞧瞧簡易版Python開發的2048這個游戲的源代碼。

    代碼:

    https://github.com/mvasilkov/kb/tree/master/6_2048

    先看效果圖:

    試玩了一下,還是蠻流暢的,有興趣的可以下載玩一下

    下載地址:http://pan..com/s/1eQZACDW

    這個游戲代碼雖然不長,但是還是蠻占篇幅的,所以簡要的說明一下流程。

    主要由三部分組成,一是素材,圖片音頻之類的文件,二是Python代碼,三是kv文件,這個kv文件有點像 html 中的css。

    Python代碼的文件名一般命名為 main.py

    然後一定有一個叫做 XXXApp 的類,並繼承 App。

    比如該類叫做GameApp,那麼該目錄下的kv文件則必須為Game,如上圖所示,如果不是,那麼kv文件中的一些設定就不會生效。

    比如設定一個標簽


    Label:
    id: time
    text: 'xxxx'
    font_size: 60

    id為time,text文本內容為'xxxx',然後字體為60

    好吧,點到為止吧,不過似乎什麼都沒點到~~~

    你還有什麼想要補充的嗎?

    你在看嗎?一起成長

❻ python能開發安卓程序嗎

可以開發安卓程序的,現在也有相關的教程。

❼ python 能開發 Android 應用嗎

python可以開發Android應用。

Python是一種解釋型腳本語言,可以應用於以下領域:

1、Web 和 Internet開發;

2、科學計算和統計;

3、人工智慧;

4、教育;

5、桌面界面開發;

6、軟體開發;

7、後端開發。


(7)python開發安卓應用擴展閱讀:

操作系統與應用程序的溝通橋梁,應用分為兩層:函數層(Library)和虛擬機(Virtual Machine)。 Bionic是 Android 改良libc的版本。

Android 同時包含了Webkit,所謂的Webkit 就是Apple Safari 瀏覽器背後的引擎。Surface flinger 是就2D或3D的內容顯示到屏幕上。Android使用工具鏈(Toolchain)為Google自製的Bionic Libc。

Android採用OpenCORE作為基礎多媒體框架。

Open CORE可分7大塊:PVPlayer、PVAuthor、Codec、PacketVideo Multimedia Framework(PVMF)、Operating System Compatibility Library(OSCL)、Common、OpenMAX。

Android 使用skia 為核心圖形引擎,搭配OpenGL/ES。skia與Linux Cairo功能相當,但相較於Linux Cairo, skia 功能還只是雛形的。

2005年Skia公司被Google收購,2007年初,Skia GL源碼被公開,Skia 也是Google Chrome 的圖形引擎。

Android的多媒體資料庫採用SQLite資料庫系統。資料庫又分為共用資料庫及私用資料庫。用戶可通過ContentResolver類(Column)取得共用資料庫。

Android的中間層多以Java 實現,並且採用特殊的Dalvik 虛擬機(Dalvik Virtual Machine)。Dalvik虛擬機是一種「暫存器型態」(Register Based)的Java虛擬機,變數皆存放於暫存器中,虛擬機的指令相對減少。

Dalvik虛擬機可以有多個實例(Instance), 每個Android應用程序都用一個自屬的Dalvik虛擬機來運行,讓系統在運行程序時可達到優化。Dalvik 虛擬機並非運行Java位元組碼(Bytecode),而是運行一種稱為.dex格式的文件。

參考資料:網路-Android

熱點內容
網頁設置的密碼如何刪除 發布:2024-05-06 02:20:30 瀏覽:925
如何查看snmp配置信息 發布:2024-05-06 02:19:48 瀏覽:487
預科編程 發布:2024-05-06 02:19:42 瀏覽:138
壓縮比英文 發布:2024-05-06 01:56:35 瀏覽:171
數字php 發布:2024-05-06 01:53:10 瀏覽:742
編程中怎麼 發布:2024-05-06 01:43:32 瀏覽:629
如何訪問遠程資料庫 發布:2024-05-06 01:39:20 瀏覽:447
刷演算法的網站 發布:2024-05-06 01:30:39 瀏覽:270
少兒編程徐州 發布:2024-05-06 01:20:42 瀏覽:462
sqlserver連接驅動 發布:2024-05-06 00:33:34 瀏覽:646