成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

abi操作流程 如何為安卓應(yīng)用提供64位原生的支持?

如何為安卓應(yīng)用提供64位原生的支持?確保您的應(yīng)用程序支持64位設(shè)備。從2019年8月1日開(kāi)始,您在Google Play上發(fā)布的應(yīng)用必須支持64位架構(gòu)。64位CPU可以為您的用戶提供更快、更豐富的體驗(yàn)

如何為安卓應(yīng)用提供64位原生的支持?

確保您的應(yīng)用程序支持64位設(shè)備。

從2019年8月1日開(kāi)始,您在Google Play上發(fā)布的應(yīng)用必須支持64位架構(gòu)。64位CPU可以為您的用戶提供更快、更豐富的體驗(yàn)。增加一個(gè)64位的應(yīng)用版本,不僅可以提高性能,為未來(lái)的創(chuàng)新創(chuàng)造條件,還可以為只支持64位架構(gòu)的設(shè)備做準(zhǔn)備。

本指南介紹了如何確保32位應(yīng)用程序支持64位設(shè)備,以便您隨時(shí)采用。

評(píng)估你的應(yīng)用如果你的應(yīng)用只使用Java編程語(yǔ)言或Kotlin(包括任何庫(kù)或SDK)編寫(xiě)的代碼,那就意味著應(yīng)用已經(jīng)支持64位設(shè)備。如果您的應(yīng)用程序使用任何本機(jī)代碼,或者您不確定您的應(yīng)用程序是否使用此類代碼,您需要評(píng)估您的應(yīng)用程序并采取相應(yīng)的措施。

您的應(yīng)用程序使用本機(jī)代碼嗎?

首先,您需要檢查您的應(yīng)用程序是否使用了任何本機(jī)代碼。如果您的應(yīng)用程序滿足以下條件,則您正在使用本機(jī)代碼:

使用任何C/C(本機(jī))代碼。與任何第三方本地庫(kù)相關(guān)聯(lián)。它是由第三方應(yīng)用程序構(gòu)建者使用本地庫(kù)構(gòu)建的。您的應(yīng)用程序包含64位庫(kù)嗎?

確定應(yīng)用程序是否包含64位庫(kù)的最簡(jiǎn)單方法是檢查APK文件的結(jié)構(gòu)。在編譯時(shí),APK將與應(yīng)用程序所需的所有本地庫(kù)打包在一起。根據(jù)ABI,本地庫(kù)存儲(chǔ)在不同的文件夾中。您的應(yīng)用程序不需要支持所有64位體系結(jié)構(gòu),但是對(duì)于您支持的每個(gè)本機(jī)32位體系結(jié)構(gòu),應(yīng)用程序必須包含相應(yīng)的64位體系結(jié)構(gòu)。

對(duì)于ARM架構(gòu),32位庫(kù)位于armeabi-v7a中。相應(yīng)的64位庫(kù)位于arm64-v8a中。

對(duì)于x86架構(gòu),尋找x86(32位)和x86_64(64位)。

首先,確保兩個(gè)文件夾中都有本地庫(kù)??偨Y(jié)如下:

平臺(tái)32位庫(kù)文件夾64位庫(kù)文件夾ARM x86請(qǐng)注意,每個(gè)文件夾中的一組庫(kù)可能完全相同,也可能不完全相同,這取決于您的應(yīng)用。你要達(dá)到的目標(biāo)是保證你的應(yīng)用能在只支持64位架構(gòu)的環(huán)境下正常運(yùn)行。

通常,為32位和64位架構(gòu)編譯的APK或軟件包都會(huì)有這兩個(gè)ABI的文件夾,每個(gè)文件夾都有一組對(duì)應(yīng)的本機(jī)庫(kù)。如果您的應(yīng)用程序不支持64位架構(gòu),您可能會(huì)看到32位ABI文件夾,但不會(huì)看到64位文件夾。

使用APK分析器查找本地庫(kù)

APK分析器是一個(gè)工具,可以用來(lái)評(píng)估編制的APK在各個(gè)方面。反對(duì)我們?cè)谖覀冇懻摰睦又?,我們將使用這個(gè)工具來(lái)查找本地庫(kù),以確定我們是否有一個(gè)64位庫(kù)。

打開(kāi)Android Studio,然后打開(kāi)任意項(xiàng)目。從菜單中選擇構(gòu)建gt分析APK…

選擇要評(píng)估的APK。檢查lib文件夾,在那里你可以找到所有的 "。so "文件。如果你能 找不到任何 "。so "文件,就意味著應(yīng)用程序已經(jīng)準(zhǔn)備了相應(yīng)的庫(kù),而你沒(méi)有 我們不需要采取進(jìn)一步的措施。如果你看到armeabi-v7a或x86,你有一個(gè)32位的庫(kù)。

檢查是否有類似的 "。so "arm64-v8a或x86_64文件夾中的文件。

如果你不 如果沒(méi)有任何arm64-v8a或x86_64庫(kù),您需要更新編譯過(guò)程,以便在APK中開(kāi)始編譯和打包相應(yīng)的工件。

如果您看到32位和64位庫(kù)都打包在軟件包中,您可以跳到在64位設(shè)備上測(cè)試應(yīng)用程序。

在解壓縮的APK中找到本地庫(kù)

APK文件在結(jié)構(gòu)上類似于zip文件,可以像zip文件一樣解壓縮。如果您更喜歡使用命令行或任何其他解壓縮工具,您也可以使用提取APK的方法。

只需解壓APK文件(取決于你使用的解壓工具,你可能需要將其重命名為。zip),然后按照上面的指南瀏覽解壓縮后的文件,以確定您的應(yīng)用程序是否準(zhǔn)備好支持64位設(shè)備。

例如,您可以從命令行運(yùn)行以下命令:

注意本例中有armeabi-v7a庫(kù)和arm64-v8a庫(kù),說(shuō)明應(yīng)用支持64位架構(gòu)。

使用64位庫(kù)編譯應(yīng)用程序

下面描述了64位庫(kù)的編譯。不過(guò)需要指出的是,下面的內(nèi)容只是介紹如何編譯代碼以及可以在源代碼基礎(chǔ)上編譯的庫(kù)。

如果您使用任何外部SDK或庫(kù),請(qǐng)確保根據(jù)上述步驟使用64位版本。如果64位版本不可用,請(qǐng)聯(lián)系相應(yīng)SDK或庫(kù)的所有者,并在規(guī)劃支持64位設(shè)備的方案時(shí)考慮這一點(diǎn)。

用Android Studio或者Gradle編譯。

Android Studio項(xiàng)目大多使用Gradle作為底層編譯系統(tǒng),所以本節(jié)適合用這兩個(gè)工具進(jìn)行編譯。編譯本機(jī)代碼很簡(jiǎn)單,只需將arm64-v8a和/或x86_64(取決于您想要支持的架構(gòu))添加到 " "申請(qǐng)文件:

用CMake編譯

如果你應(yīng)該如果用CMake編譯,可以通過(guò)將arm64-v8a傳遞給 "-丹德羅迪_ ABI "參數(shù):

此方法在使用時(shí)無(wú)效。請(qǐng)參閱使用Gradle編譯一節(jié)。

用ndk-build編譯。

如果您的應(yīng)用程序是使用ndk-build編譯的,您可以修改 " "通過(guò)變量文件來(lái)編譯64位ABI:

此方法在使用時(shí)無(wú)效。請(qǐng)參閱使用Gradle編譯一節(jié)。

通過(guò)使用Android應(yīng)用包來(lái)減少大小增加

向應(yīng)用程序添加64位體系結(jié)構(gòu)支持可能會(huì)增加APK的大小。我們強(qiáng)烈建議您使用Android應(yīng)用功能,以最大限度地減少在同一個(gè)APK中同時(shí)包含32位和64位本機(jī)代碼對(duì)APK大小的影響。

事實(shí)上,將應(yīng)用程序更改為Android App Bundle不僅可以減少APK大小,甚至可以使其比現(xiàn)在更小。

游戲開(kāi)發(fā)商

我們知道第三方游戲引擎的遷移是一個(gè)勞動(dòng)密集型的過(guò)程,需要很長(zhǎng)的準(zhǔn)備時(shí)間。幸運(yùn)的是,目前最常用的三個(gè)引擎都支持64位架構(gòu):

虛幻(2015年起)Cocos2d(2015年起)Unity(2018年起)Unity開(kāi)發(fā)者升級(jí)到支持的版本。

Unity從2018.2和2017.4.16版本開(kāi)始提供64位支持。

如果您發(fā)現(xiàn)您正在使用的Unity版本不支持64位架構(gòu),請(qǐng)決定升級(jí)到哪個(gè)版本,并按照Unity提供的指南遷移您的環(huán)境,以確保您的應(yīng)用程序升級(jí)到可以編譯64位庫(kù)的版本。Unity建議您升級(jí)到編輯器的最新LTS版本,以獲得最新的功能和更新。

下表概述了Unity的各種版本以及您應(yīng)該采取的措施:

Unity版本支持64位架構(gòu)嗎?建議的措施2018.4 (LTS)

??

(待發(fā)布)確保你的編譯設(shè)置可以輸出64位庫(kù)。2018.3

??

確保您的編譯設(shè)置可以輸出64位庫(kù)。2018.2

??

確保您的編譯設(shè)置可以輸出64位庫(kù)。2018.1

提供實(shí)驗(yàn)性的64位支持。2017.4 (LTS)

??

2017年4月16日起支持64位架構(gòu)。確保您的編譯設(shè)置可以輸出64位庫(kù)。2017.3

??

升級(jí)到支持64位體系結(jié)構(gòu)的版本。2017.2

??

升級(jí)以支持64位架構(gòu)的版本。2017.1

??

升級(jí)到支持64位體系結(jié)構(gòu)的版本。5.6升

??

升級(jí)到支持64位體系結(jié)構(gòu)的版本。確保編譯設(shè)置可以輸出64位庫(kù)。

如果您使用的Unity版本支持64位Android庫(kù),您可以調(diào)整編譯設(shè)置以生成64位版本的應(yīng)用程序。您還需要使用IL2CPP后端作為腳本后端(詳見(jiàn)這里)。要設(shè)置Unity項(xiàng)目以編譯64位模式,請(qǐng)執(zhí)行以下操作:

轉(zhuǎn)到Build Settings,確保Android平臺(tái)旁邊顯示了Unity的logo,以確保你是為Android編譯的。* *如果Android平臺(tái)旁邊沒(méi)有顯示Unity徽標(biāo),請(qǐng)選擇Android,然后單擊切換平臺(tái)。單擊播放器設(shè)置。

轉(zhuǎn)到播放器設(shè)置面板gt Android設(shè)置gt其他設(shè)置gt配置。

將腳本后端設(shè)置為IL2CPP。

選擇* * "目標(biāo)架構(gòu)和gtarm64復(fù)選框。

照常編譯!

請(qǐng)注意,在編譯ARM64架構(gòu)時(shí),您需要專門為該平臺(tái)編譯您的所有資源。請(qǐng)跟隨團(tuán)結(jié) 的指南來(lái)減少APK的大小,并考慮使用Android應(yīng)用程序功能來(lái)減少大小的增加。

在64位硬件上測(cè)試應(yīng)用程序

64位版本的應(yīng)用程序應(yīng)該提供與32位版本相同的質(zhì)量和功能集。請(qǐng)測(cè)試您的應(yīng)用程序,以確保使用最新64位設(shè)備的用戶可以在您的應(yīng)用程序中獲得良好的體驗(yàn)。

要開(kāi)始測(cè)試您的應(yīng)用程序,您需要一個(gè)支持64位架構(gòu)的設(shè)備。如今,有許多流行的設(shè)備支持64位架構(gòu),如Googl

如何使用IPFS ENS托管您的Dapp并通過(guò)EthDNS訪問(wèn)它?

步驟1:修改您的應(yīng)用程序。

我們的應(yīng)用程序基于創(chuàng)建-響應(yīng)-應(yīng)用程序。除了大量使用GraphQL,我認(rèn)為它是一個(gè)非常標(biāo)準(zhǔn)的。反應(yīng)應(yīng)用程序。我們沒(méi)有。;不使用任何dapp框架(如:將構(gòu)建文件發(fā)布到IPFS。

我沒(méi)有。;不要詳細(xì)說(shuō)明如何設(shè)置和運(yùn)行IPFS守護(hù)進(jìn)程(但這應(yīng)該只是IPFS守護(hù)進(jìn)程的問(wèn)題)。

完成所有設(shè)置后,將剛剛編譯的構(gòu)建目錄添加到IPFS中。

步驟3::將contenthash設(shè)置為ENS

如果你不 現(xiàn)在還沒(méi)有ENS的名字,這是一個(gè)注冊(cè)的好機(jī)會(huì)。只需在ENS管理器中注冊(cè)一個(gè)新名稱,設(shè)置一個(gè)公共解析器,并通過(guò)選擇 "內(nèi)容 "記錄類型。

第四步。通過(guò)EthDNS訪問(wèn)它。

如果通過(guò)ENS contenthash支持的瀏覽器/錢包打開(kāi)(比如Status)。您應(yīng)該可以在下看到相同的內(nèi)容。然而,你可以 不要指望你所有的朋友和家人都能在ENS支持的瀏覽器中看到你的內(nèi)容,這是EthDNS的作用。