最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用BeeWare實現(xiàn)iOS調(diào)用Python方式

 更新時間:2023年12月19日 09:09:15   作者:培根芝士  
這篇文章主要介紹了使用BeeWare實現(xiàn)iOS調(diào)用Python方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

1、準備工作

1.1、安裝Python

1.2、設(shè)置虛擬環(huán)境

我們現(xiàn)在將創(chuàng)建一個虛擬環(huán)境——一個“沙盒”,如果我們將軟件包安裝到虛擬環(huán)境中,我們計算機上的任何其他Python項目將不會受到影響。

如果我們把虛擬環(huán)境搞得一團糟,我們將能夠簡單地刪除它并重新開始,而不會影響我們計算機上的任何其他Python項目,也無需重新安裝Python。

mkdir beeware-tutorial
cd beeware-tutorial
python3 -m venv beeware-venv
source beeware-venv/bin/activate

如果生效,終端提示符應(yīng)該被更改,它應(yīng)該有一個(beeware-venv)前綴。表明目前處于BeeWare虛擬環(huán)境中。

如果不是,請重新運行最后一個命令(activate命令)以重新激活虛擬環(huán)境。

2、創(chuàng)建BeeWare應(yīng)用程序

2.1、安裝BeeWare工具

BeeWare可用于打包應(yīng)用程序以分發(fā)給最終用戶,但它也可用于引導(dǎo)新項目。

確保你處于beeware-venv虛擬環(huán)境,然后運行:

python -m pip install briefcase

2.2、引導(dǎo)一個新項目

我們將使用以下命令創(chuàng)建一個名為Hello World的應(yīng)用程序:

briefcase new

BeeWare將要求我們提供新應(yīng)用程序的一些細節(jié):

  • Formal Name - 接受默認值: Hello World.
  • App Name - 接受默認值:helloworld。
  • Bundle - 如果您擁有自己的域名,請按相反順序輸入該域名。(例如,如果您擁有“cupcakes.com”域名,請輸入com.cupcakes作為包名)。如果您沒有自己的域名,請接受默認包名(com.example)。
  • Project Name - 接受默認值: Hello World.
  • Description - 描述信息,接受默認值
  • Author - 輸入您自己的姓名。
  • Author’s email - 輸入您自己的電子郵件地址。這將在配置文件、幫助文本以及將應(yīng)用程序提交到應(yīng)用程序商店時需要電子郵件的任何地方中使用。
  • URL - 您應(yīng)用程序的登錄頁面的URL。同樣,如果您擁有自己的域名,請在該域名(包括https://)輸入URL。否則,只需接受默認URL(https://example.com/helloworld)。此URL不需要實際存在(目前);只有當您將應(yīng)用程序發(fā)布到應(yīng)用程序商店時,它才會被使用。
  • License - 接受默認許可證:BSD。這不會影響項目運行。
  • GUI framework - 接受默認選項,Toga(BeeWare自己的GUI工具包)。

BeeWare將生成一個項目架構(gòu):

beeware-tutorial/
    beeware-venv/
        ...
    helloworld/
        CHANGELOG
        LICENSE
        README.rst
        pyproject.toml
        src/
            helloworld/
                resources/
                    helloworld.icns
                    helloworld.ico
                    helloworld.png
                __init__.py
                __main__.py
                app.py
        tests/
            __init__.py
            helloworld.py
            test_app.py

這個架構(gòu)實際上是一個功能齊全的應(yīng)用程序,沒有添加任何其他內(nèi)容。

src目錄包含應(yīng)用程序的所有代碼,tests目錄包含初始測試用例,pyproject.toml文件描述了如何打包應(yīng)用程序進行分發(fā),包含剛剛提供給BeeWare的配置詳細信息。

2.3、項目架構(gòu)

在src/helloworld目錄中,您應(yīng)該看到3個文件:__init__.py、__main__.py和app.py。

  • __init__.py 將helloworld目錄標記為可導(dǎo)入的Python模塊。它是一個空文件;它存在的事實告訴Python解釋器,helloworld目錄定義了一個模塊。
  • __main__.py 將helloworld模塊標記為一個可執(zhí)行模塊類型
  • app.py 包含創(chuàng)建應(yīng)用程序窗口的邏輯

3、部署到iOS

要編譯iOS應(yīng)用程序,我們需要Xcode

3.1、創(chuàng)建iOS應(yīng)用程序腳手架

briefcase create iOS

完成后,我們將有一個build/helloworld/ios/xcode目錄,其中包含Xcode項目,以及應(yīng)用程序所需的支持庫和應(yīng)用程序代碼。

3.2、編譯iOS應(yīng)用程序:

briefcase build iOS

3.3、運行iOS應(yīng)用程序:

briefcase run iOS

也可以直接用Xcode打開項目進行編譯運行。

4、添加第三方依賴庫

以requests為例

在app.py添加import requests

此時運行時報錯:

ModuleNotFoundError: No module named 'requests'

在app的根目錄中有一個名為pyproject.toml的文件。這個文件包含第一次運行 briefcase new命令時提供的所有配置細節(jié)

修改requires配置

requires = [
    "requests",
]

當Briefcase構(gòu)建app時,會自動運行pip install requests命令把requests包安裝到app中。

將修改pyproject.toml后,執(zhí)行下面命令升級已打包app中的依賴項:

briefcase update iOS

升級完成后,使用briefcase build iOS和 briefcase run iOS命令重新運行

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解Python之數(shù)據(jù)序列化(json、pickle、shelve)

    詳解Python之數(shù)據(jù)序列化(json、pickle、shelve)

    本篇文章主要介紹了Python之數(shù)據(jù)序列化,本節(jié)要介紹的就是Python內(nèi)置的幾個用于進行數(shù)據(jù)序列化的模塊,有興趣的可以了解一下。
    2017-03-03
  • Python?運算符Inplace?與Standard?

    Python?運算符Inplace?與Standard?

    這篇文章主要介紹了Python?運算符Inplace?與Standard,nplace運算符的行為類似于普通運算符,只是它們在可變和不可變目標的情況下以不同的方式運行
    2022-09-09
  • 利用python實現(xiàn)xml與數(shù)據(jù)庫讀取轉(zhuǎn)換的方法

    利用python實現(xiàn)xml與數(shù)據(jù)庫讀取轉(zhuǎn)換的方法

    這篇文章主要給大家介紹了關(guān)于利用python實現(xiàn)xml與數(shù)據(jù)庫讀取轉(zhuǎn)換的方法,文中通過示例代碼介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面來一起看看吧。
    2017-06-06
  • python多線程并發(fā)讓兩個LED同時亮的方法

    python多線程并發(fā)讓兩個LED同時亮的方法

    今天小編就為大家分享一篇python多線程并發(fā)讓兩個LED同時亮的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • python實現(xiàn)可將字符轉(zhuǎn)換成大寫的tcp服務(wù)器實例

    python實現(xiàn)可將字符轉(zhuǎn)換成大寫的tcp服務(wù)器實例

    這篇文章主要介紹了python實現(xiàn)可將字符轉(zhuǎn)換成大寫的tcp服務(wù)器,通過tcp服務(wù)器端實現(xiàn)針對字符的轉(zhuǎn)換與返回功能,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-04-04
  • termux中matplotlib無法顯示中文問題的解決方法

    termux中matplotlib無法顯示中文問題的解決方法

    這篇文章主要介紹了termux中matplotlib無法顯示中文問題的解決方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • Django基于Token的驗證使用的實現(xiàn)

    Django基于Token的驗證使用的實現(xiàn)

    本文主要介紹了Django基于Token的驗證使用的實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • python中sort()和sorted()的區(qū)別及用法實例

    python中sort()和sorted()的區(qū)別及用法實例

    我們通常會遇到對數(shù)據(jù)庫中的數(shù)據(jù)進行排序的問題,下面這篇文章主要給大家介紹了關(guān)于python中sort()和sorted()的區(qū)別及用法的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-06-06
  • Python 中的類class實例詳解

    Python 中的類class實例詳解

    這段文章詳細介紹了Python面向?qū)ο缶幊痰暮诵母拍?文章還強調(diào)了類的命名規(guī)范、實例方法與屬性的區(qū)別、私有屬性的定義及使用@property簡化數(shù)據(jù)類定義的重要性,感興趣的朋友跟隨小編一起看看吧
    2026-05-05
  • Python requests請求響應(yīng)以流stream的方式實現(xiàn)打印輸出

    Python requests請求響應(yīng)以流stream的方式實現(xiàn)打印輸出

    在使用requests庫時,接收響應(yīng)并打印內(nèi)容需注意:若響應(yīng)內(nèi)容過大,應(yīng)設(shè)置合理的chunk_size參數(shù)以避免內(nèi)存溢出,當設(shè)置了stream=True時,不能使用response.text或response.content屬性讀取響應(yīng)內(nèi)容,否則會拋出異常
    2025-10-10

最新評論

平泉县| 浦城县| 永宁县| 朝阳县| 永兴县| 五寨县| 宜章县| 昌平区| 炉霍县| 师宗县| 广元市| 威海市| 萨迦县| 壶关县| 忻州市| 梅河口市| 荆州市| 剑阁县| 伊宁市| 邢台县| 永善县| 玛曲县| 枣强县| 汕头市| 承德市| 淮滨县| 宁陕县| 沧源| 巴里| 西乡县| 南召县| 博乐市| 闽清县| 东方市| 昆明市| 周宁县| 确山县| 舒兰市| 东乌珠穆沁旗| 烟台市| 红安县|