【原生】CocosCreator 原生開發環境配置(JavaSDK,Android Studio,Python,豌豆莢,真機實測、屏幕刷新率改變游戲FPS)


版本:2.4.2

參考:

cocos教程:安裝配置原生開發環境

cocos教程:打包發布原生平台

 

記錄下安裝配置cocos的win下原生開發環境,從jdk,android studio,python安裝,直到能夠真機調試。

 

一  安裝Java SDK

二 安裝Python

三 安裝Android Studio

四 設置cocos,構建發布

五 遇到的問題

一 安裝Java SDK

編輯Android工程需要Java JDK工具, JDK1.8 64位:下載地址 

 

安裝完成后,配置環境變量。我win10。桌面計算機圖標上右鍵 - 屬性 - 更改設置 - 高級 - 環境變量。

 

新建系統變量JAVA_HOME,變量值是java sdk安裝路徑

 

編輯變量Path

 

點擊新建,輸入 "%JAVA_HOME%\bin“

 

配置完后重啟電腦,在cmd中輸入 java -version 查看版本

 java -version

 

二 安裝Python

下載地址:Python

用於C++編譯環境,我下載安裝的2.7.13。 (cocos推薦2.7.5+,不要安裝3.x版本)

 

安裝完成后,和jdk一樣,在環境變量Path中新建"C:\Python27"

 

 

重啟電腦,cmd輸入python,可以查看版本

python

 

三 安裝Android Studio

Android Studio

下載安裝Android Studio:下載地址,我下載的android-studio-ide-191.5977832-windows。

 

SDK

打開android studio,新建任意項目,選擇Tools - SDK Manager

 

cocos推薦主流API Level 23,26,28。 勾選后,點擊右下角Apply,開始自動下載。

復制Andoroid SDK Location的地址,后面需要在cocos中填寫。

 

NDK

安裝完sdk,切換到SDK Tools,勾選右下角Show Package Details。

勾選Android SDK Build-Tools最新版,點擊Apply,會自動下載。

勾選NDK 19(cocos推薦r17-19),點擊Apply,會自動下載。

 

 

 四 配置cocos原生開發環境

cocos菜單欄:文件 - 設置 - 原生開發環境

 

設置SDK路徑:C:\Users\Administrator\AppData\Local\Android\Sdk

設置NDK路徑:C:\Users\Administrator\AppData\Local\Android\Sdk\ndk\19.2.5345600      (cocos推薦r17-19版本,我選擇的19)

 

cocos菜單欄:項目 - 構建發布

 

Target API Level 可選android-26,28,30之類,我用的android-28.

具體參數意思看cocos教程

 

構建

點擊構建。構建完畢后,在android studio中打開cocos構建的項目。這時android studio會自動下載缺失的工具,比如gradle等。

首次在cocos構建,必須先打開android studio打開項目,androidstudio自動下載必須的工具,然后再返回cocos編譯,不然很可能編譯失敗。

 

gradle默認4.10.3,也是cocos目前支持的版本。如果要更換gradle版本,android studio菜單欄:Edit - Find - Find in Path,輸入如下進行搜索

distributionUrl=https\://services

 例如將Gradle版本改成6.3。

 

 

編譯

點擊編譯,過程比較長。可能會報錯,出現failed,點擊查看log。拿着報錯信息去百度或者論壇找解決方案吧。

我運行了好幾次,都沒成功,在論壇和百度查找了一番。重新安裝了jdk才解決,cocos官網教程那個java jdk地址下載了用了報錯。 = =!

 

如果編譯成功,則顯示complete

 

將手機打開開發者模式,開啟usb調試,點擊運行。然后沒反應。

 

android studio 菜單:View - ToolBar, 打開工具欄

 

顯示工具欄,可以看到No devices,說明手機雖然連上了電腦,但是android studio檢測不到。

 

選擇Troubleshoot device connnections。

 

Android Studio 檢測到14個設備,其中包括我的華為手機。但是android studio就是顯示 no deveices。

 

嘗試下載華為手機驅動,adb,什么的,折騰了一番,都沒用。

然后解決方案是,下載豌豆莢,手機和pc端都安裝。

豌豆莢官網:手機端下載

天極網:pc端下載  (因為豌豆莢pc端已經不運營了,所以官網沒有)

下載完成后,pc和手機都運行豌豆莢,連接手機,打開usb調試模式,豌豆莢會自動下載驅動,然后android studio就會檢測到手機了。

下次就不需要再運行豌豆莢了,手機連上usb會自動被android studio檢測到。

 

點擊綠色三角運行,手機會自動安裝apk,這樣就可以真機實測了。

 

下圖項目自動安裝的apk

 

 五 遇到的問題

 Java home is different

發布原生,編譯時報錯,查看logs時,顯示Java home is different.

 

在androd studio中選擇File-Project Structure

 

 

選擇SDK Location - JDK location,選擇系統的JAVA_HOME

 

 

如果仍然提示這個問題,刪除項目再次構建-編譯一次,編譯前檢查JDK location是否設置為了系統環境變量配置的JAVA_HOME。

 

android studio 和 gradle使用的jdk不是同一個

 發布原生的時候,提示android studio 和 gradle使用的jdk不是同一個。然后就一直在那轉圈等着。

 

 

修改同上一個問題一樣

 

APP ABI

構建發布時選擇了armeabi-v7a,導致編譯失敗。我取消了勾選,只勾選arm64-v8a和x86則編譯通過。

 

發布后可以在android項目中這里修改APP ABI。

 app abi設備的cpu類型:

  1. armeabiv-v7a: 第7代及以上的 ARM 處理器。2011年15月以后的生產的大部分Android設備都使用它.
  2. arm64-v8a: 第8代、64位ARM處理器,很少設備,三星 Galaxy S6是其中之一。
  3. armeabi: 第5代、第6代的ARM處理器,早期的手機用的比較多。
  4. x86: 平板、模擬器用得比較多。
  5. x86_64: 64位的平板。

 

屏幕高刷新率會改變游戲FPS

在144hz屏幕刷新率的手機上,游戲刷新率也會變成Fps=144。

使用cc.game.setFrameRate(60)修改無效!
使用 cc.game.setFrameRate(59)才有效...
源碼CCGame.js中,只要是不是60或30,就會使用this.frame_Time = 1000/frameRate的時間;若是60或30,則會使用手機刷新率。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM