Ren’Py支持運行安卓操作系統的設備,比如智慧型手機和平板電腦。由於這些設備並不100%支持Ren’Py的所有函數,在那些設備運行的包會做最小化修改。
與Ren’Py引擎分開下載的RAPT程序——Ren’Py安卓打包工具,可以創建安卓的測試版和正式版打包文件。
部分Ren’Py在安卓平台使用的庫需要通過GNU Lesser/Library General Public License的認證。創作者會需要遵守Ren’Py生成版的認證規則。我們相信下列包含在app描述裡的語言能夠滿足需求,不過最好能找個律師確認一遍。(譯者註:建議把中英文都寫上。)
This program contains free software licensed under a number of licenses, including the GNU Lesser General Public License. A complete list of software is available at https://www.renpy.org/l/license/.
這個程序包括一些證書下的自由軟體認證,包括GNU Lesser General Public License。完整的軟體列表參見 https://www.renpy.org/l/license/.
在安卓上啟動一個Ren’Py遊戲時,會執行下列按鍵綁定:
在Ren’Py支持的,基於觸控螢幕的安卓平台和基於滑鼠的平台之間還是有很多重要的差異。幾個重要的安卓軟硬體差別在於:
renpy.input()
)將受到輸入法的限制,不能完全正常工作(西方語言應該可以,其他語言可能存在問題)。除此之外,還有一些由於人為因素導致的差異。
為了幫助創作者適應這些差異,Ren’Py會給予設備螢幕尺寸和性能,針對安卓自動選擇界面變化。詳見 界面變種 。
處於測試需求,Ren’Py支持三種安卓模擬模式。這些都通過啟動器的安卓界面接入。
這個模式模擬一台基於電視的安卓設備,比如OUYA主機。按鍵映射為遠程或控制器輸入,方向鍵提供了導航功能。select鍵是回車,Esc鍵是菜單,PageUp鍵是back。
這個模式會在“電視機盲區”區域顯示一個輪廓。所有“電視機盲區”區域的畫面在所有電視上都不能顯示。
這些模擬器可以用於快速測試項目,當然最好能在真實的硬體上做測試。模擬器不處理那些人為因素導致的事件,比如用戶的“胖手指”。
Ren’Py包含一些工具能幫助創作者以包(package)為中心進行安卓遊戲開發。在這個過程中,創作者會使用一台電腦生成一個安卓的包(package)並上傳到創作者自己的設備上。創作者可以像其他安卓應用程式一樣運行這個遊戲。如果運行無誤,就可以把這個包上傳到Google Play等app商店了。
生成一個安卓應用程式包含4個步驟:
一旦你完成了這些步驟,就能得到一個可以運行的安卓包。當你修改了某個遊戲的配置或者完整配置一個新遊戲時,只需要執行步驟3;如果你要重新生成一個包,通常只需要執行步驟4。
在你生成包(package)之前,總共有3種東西需要手工下載和安裝
Java Development Kit. Java開發工具包(Java Development Kit (JDK)) 包含一些RAPT需要的工具。 RAPT需要使用這些工具,包括用於生成金鑰(key)和簽名包的工具。JDK的下載網址為:
需要下載的是版本為8的JDK。
請注意,關注開發者的JDK與關注用戶的JRE是不同的。而創作者需要JDK創建安卓包。
安卓設備 創作者在開發時需要對設備進行配置。首先需要啟用設備的開發者模式,並且為電腦配備安卓開發環境。如何設置電腦的說明可以查看下面的連接:
也可以使用app的x86_64版本鏡像,在安卓模擬器上運行程序(注意,模擬器不支持x86版本的鏡像)。關於配置模擬器的內容超出了此文件的範圍。
下一步是配置安卓SDK和你開發環境的部分。這步包括:
這步需要接入網路。
執行這個步驟時,選擇Ren’Py啟動器中安卓界面的“安裝SDK並創建金鑰”。
RAPT會即時報告它正在做的工作。它還會將各類許可的警告訊息,並詢問你是否需要生成一個金鑰。
Warning
RAPT生成的金鑰使用一個標準密碼創建。你應該使用金鑰工具生成自己的簽名金鑰。
至少,你應該將android.keystore文件保存在一個安全的地方。你還應該將保存這個金鑰的備份,因為沒有這個金鑰的話,你就不能上傳生成的應用程式。
如果你不想每次都下載SDK,可以創建一個名為“sdk.txt”的文本文件,文件裡寫上已安裝SDK的所在路徑。
生成一個包(package)之前,你必須向Ren’Py提供一些關於遊戲安卓版本的訊息。在Ren’Py啟動器的安卓界面,選擇“配置”。
如果你需要修改這些訊息——例如,你做了一個遊戲的新版本——你可以重新運行配置命令。之前你配置的選項已經被記住了。
最後,你可以生成應用包並安裝了。將你的安卓設備連接到你的電腦,然後在Ren’Py啟動器的安卓界面選擇“生成應用包並安裝”。(首次安裝時,你的安卓設備可能會詢問你是否允許你的電腦向安卓設備安裝應用。)
如果你需要將遊戲的apk文件手工移植到安卓設備上的話,在Ren’Py啟動器的安卓界面選擇“生成應用包”。然後進入RAPT目錄下的bin目錄,將選取合適的文件複製到安卓設備上。之後找到安卓的文件管理應用找到對應的apk文件,打開文件執行安裝。
Ren’Py中有兩種模式供創作者選用,debug模式和release模式。Debug模式對測試很有用,並且可以很方便地使用Android Studio工具查看設備的日誌和文件。Release模式用於生成最終上傳到各應用商店的app版本。
如果要在debug模式和release模式之間切換,需要卸載app。
Ren’Py使用遊戲基目錄中的兩個文件生成app圖示。
安卓的自適應圖示機制是這樣工作的,將兩個圖示放在至少132×132像素的區域中並中央對齊,然後將前景層蓋在背景層上。 有可能在這個區域之外的圖像也會顯示,但也可能會被遮擋住。最好在安全區域之外還預留一些出血位(bleeding)。 當拖拽圖示時,兩個圖層可能會保持相對位置有一點移動。
關於自適應圖示的更多訊息,請查看:
注意那裡的1dp實際上對應螢幕上4個實際像素。
當生成應用程式時,Ren’Py會將這些文件轉換為不同設備的適用尺寸,並為那些支持自適應圖示的設備生成靜態圖示。
預啟動畫面(presplash)是在Ren’Py完全載入之前顯示的畫面,比主啟動界面(splashscreen)更早顯示。 在安卓設備上,預啟動畫面特別重要,尤其是Ren’Py首次運行時需要較長時間解包運行使用的支持文件。
當設備支持Google Play時,Ren’Py可選擇支持擴展APK的使用。擴展APK允許Google Play突破遊戲不能大於50MB的限制。詳見:
關於擴展APK工作機制的訊息。 迄今為止,只支持主擴展APK,文件限制為2GB。創建擴展APK時,所有的遊戲文件都會放在這個APK包中。Ren’Py會顯式使用這些文件。
要將遊戲配置為使用擴展APK,你需要設置兩個變數:
build.google_play_key
= “…” link這是與你的應用關聯的Google Play證書,這個證書在Google Play開發者終端上與你應用關聯的“”Monetization Setup”標籤內可以找到。(確保在金鑰中刪除了所有的空格和換行。)
一個常見的key長這樣:
define build.google_play_key = "MIIBIjANBgkqhkiG9w0BAQEFA…HGTQIDAQAB"
三個點的占位符“…”可能表示一長串字母和數字。
build.google_play_salt
= ( … ) link這是一個20byte的元組,每個byte都是一個介於-128和127之間的整數。這個元組用於加密來自Google Play的訊息。
一個合法(但不安全)的元組值如下:
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
當在設備上安裝了APK包之後,RAPT會在設備上放置擴展APK。擴展APK會是在RAPT目錄的bin子目錄下的一個.obb文件。
在通常操作中,用戶安裝應用程式時,Google Play會在設備上自動放置擴展APK。