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

Android實(shí)戰(zhàn)之Cocos游戲容器搭建

 更新時間:2022年06月29日 08:45:17   作者:??callme大帥????  
這篇文章主要介紹了Android實(shí)戰(zhàn)之Cocos游戲容器搭建,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,感興趣的小伙伴可以參考一下

一、前言

現(xiàn)在市面上很多app有游戲中心功能,最早的有微信小游戲和QQ小游戲,再后來像bilibili、喜馬拉雅、愛奇藝、比心等等應(yīng)用中也加入了游戲中心模塊。本篇文章將介紹如何上手搭建cocos creater游戲容器,先來看看效果:

二、準(zhǔn)備工作

  • 安裝最新版本CocosDashboard
  • 在Dashborad下載最新版本編輯器

在Android Studio安裝NDK,我這里安裝的是21.1.6352462,目前為止比較穩(wěn)定

在CocosDashboard新建HelloWorld項目并打開運(yùn)行,我這里用的3.1.1版本

打開CocosCreator菜單欄偏好設(shè)置,在外部程序欄中設(shè)置Android NDK和Android SDK路徑

三、構(gòu)建cocos游戲.so文件

在CocosCreator菜單欄選擇項目-構(gòu)建發(fā)布,選擇發(fā)布平臺:安卓,點(diǎn)擊構(gòu)建,等大概幾分鐘

  • 成功后,用Android Studio打開文件夾里生成的proj項目,并運(yùn)行該項目到手機(jī)上,這里游戲資源加載的是proj同級目錄assets,后續(xù),我們會將assets壓縮包zip存放在我們服務(wù)器,達(dá)到用戶下載解壓后加載啟動游戲的目的。
  • 為了后續(xù)游戲容器能加載本地filePath下的游戲資源,需要修改JniCocosActivity.cpp里的Java_com_cocos_lib_CocosActivity_onCreateNative方法

  • ./gradlew assembleRelease打release包, 將instantapp-release.apk后綴改成zip,解壓后獲取lib下arm64-v8a/armeabi-v7a下的libcocos.so(構(gòu)建版本設(shè)置那里可以勾選不同架構(gòu))

四、制作自己的游戲容器

  • 創(chuàng)建module,包名為com.cocos.lib(為了和.so文件里保持一致,不然無法調(diào)用c方法)
  • module的清單文件加
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
  • 將/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/android/java/libs拷貝到module/libs下
  • module下build.gradle添加
implementation fileTree(include: ['*.jar'], dir: 'libs')
  • 將.so文件放在module/src/main/jniLibs/下
  • 將/Applications/CocosCreator/Creator/3.1.1/CocosCreator.app/Contents/Resources/resources/3d/engine-native/cocos/platform/android/java/src/com/cocos/lib下的java文件復(fù)制到module/src/main/java/com.cocos.lib下
  • 修改文件CocosActivity.java,因?yàn)橛螒蝽撁婀俜酵扑]用多進(jìn)程來做,所以這里退出游戲,即將游戲進(jìn)程kill
// 加一個filePath參數(shù)
private native void onCreateNative(Activity activity, AssetManager assetManager, String obbPath, int sdkVersion, String filePath);
// 外部傳入游戲資源路徑
protected String filePath() {
    return "";
}
@Override
protected void onCreate(Bundle savedInstanceState) {
    ...
    onCreateNative(this, getAssets(), getAbsolutePath(getObbDir()), Build.VERSION.SDK_INT, filePath());
}
@Override
public void onBackPressed() {
    super.onBackPressed();
    System.exit(0);
}

五、總結(jié)

自此,我們游戲容器制作完畢,我也將該篇的游戲容器module傳到了jitpack,可以直接使用:

allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
}
dependencies {
	   implementation 'com.github.qq326646683:cocos-creator-android:1.0.0'
}

六、如何使用

  • 文件讀寫、網(wǎng)絡(luò)權(quán)限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
  • 下載游戲zip并解壓
  • 繼承CocosActivity,并將解壓后的路徑賦值給filePath
class CocosGameActivity: CocosActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
    }
    override fun filePath() = intent.getStringExtra("path")
}

清單文件:

 <application>
        <meta-data
            android:name="android.app.lib_name"
            android:value="cocos" />
        <activity android:name=".CocosGameActivity" android:process=":cocos"/

到此這篇關(guān)于Android實(shí)戰(zhàn)之Cocos游戲容器搭建的文章就介紹到這了,更多相關(guān)AndroidCocos容器搭建內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Android組件化、插件化詳細(xì)講解

    Android組件化、插件化詳細(xì)講解

    這篇文章主要介紹了Android組件化、插件化詳細(xì)講解,這些單獨(dú)?次封裝的功能模塊apk,就稱作插件,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,需要的朋友可以參考一下
    2022-07-07
  • Android中使用Post請求的方法

    Android中使用Post請求的方法

    這篇文章主要介紹了Android中使用Post請求的方法,實(shí)例分析了Android中使用post請求的原理與具體實(shí)現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • Kotlin中的擴(kuò)展函數(shù)與屬性示例詳解

    Kotlin中的擴(kuò)展函數(shù)與屬性示例詳解

    理論上來說,擴(kuò)展函數(shù)很簡單,它就是一個類的成員函數(shù),不過定義在類的外面。下面這篇文章主要給大家介紹了關(guān)于Kotlin中擴(kuò)展函數(shù)與屬性的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2018-06-06
  • 詳解Android開發(fā)數(shù)據(jù)持久化之文件存儲(附源碼)

    詳解Android開發(fā)數(shù)據(jù)持久化之文件存儲(附源碼)

    本篇文章主要介紹了詳解Android開發(fā)數(shù)據(jù)持久化之文件存儲(附源碼),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • 關(guān)于Android bitmap你不知道的一些事

    關(guān)于Android bitmap你不知道的一些事

    這篇文章主要為大家詳細(xì)介紹了關(guān)于Android bitmap你不知道的一些事,使用bitmap需要注意的一些細(xì)節(jié),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • android初學(xué)者必須掌握的Activity狀態(tài)的四大知識點(diǎn)(必讀)

    android初學(xué)者必須掌握的Activity狀態(tài)的四大知識點(diǎn)(必讀)

    本篇文章主要介紹了android activity的四種狀態(tài),詳細(xì)的介紹了四種狀態(tài),包括Running狀態(tài)、Paused狀態(tài)、Stopped狀態(tài)、Killed狀態(tài),有興趣的可以了解一下。
    2016-11-11
  • Kotlin?RecyclerView滾動控件詳解

    Kotlin?RecyclerView滾動控件詳解

    RecyclerView是Android一個更強(qiáng)大的控件,其不僅可以實(shí)現(xiàn)和ListView同樣的效果,還有優(yōu)化了ListView中的各種不足。其可以實(shí)現(xiàn)數(shù)據(jù)縱向滾動,也可以實(shí)現(xiàn)橫向滾動(ListView做不到橫向滾動)。接下來講解RecyclerView的用法
    2022-12-12
  • Android實(shí)現(xiàn)從相冊截圖的功能

    Android實(shí)現(xiàn)從相冊截圖的功能

    這篇文章主要介紹了Android實(shí)現(xiàn)從相冊截圖的功能,簡單介紹了Android實(shí)現(xiàn)從相冊截圖功能的步驟,供大家參考,感興趣的小伙伴們可以參考一下
    2016-01-01
  • 淺談Android onTouchEvent 與 onInterceptTouchEvent的區(qū)別詳解

    淺談Android onTouchEvent 與 onInterceptTouchEvent的區(qū)別詳解

    本篇文章小編為大家介紹,Android onTouchEvent 與 onInterceptTouchEvent的區(qū)別詳解。需要的朋友參考下
    2013-04-04
  • Android判斷某個權(quán)限是否開啟的方法

    Android判斷某個權(quán)限是否開啟的方法

    今天小編就為大家分享一篇Android判斷某個權(quán)限是否開啟的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07

最新評論

长汀县| 湄潭县| 乌兰县| 肇庆市| 商城县| 金秀| 怀集县| 砀山县| 大邑县| 中卫市| 枣阳市| 乳源| 衢州市| 保靖县| 日喀则市| 吴江市| 洛宁县| 昌宁县| 昭平县| 监利县| 保康县| 汝南县| 林周县| 都匀市| 礼泉县| 贺州市| 修水县| 德惠市| 昌吉市| 留坝县| 汝城县| 平潭县| 隆化县| 惠来县| 嘉兴市| 天峻县| 北海市| 西城区| 吴川市| 东港市| 会同县|