一種unity Android集成SDK的方式

由于目前國內(nèi)各類應(yīng)用市場分庭而治的情況,當要分發(fā)至這些渠道后行嗤,往往需要集成各類應(yīng)用市場的SDK已日,在接入了幾家之后,對提供的官方的Spec做法略有異議栅屏,這里主要介紹的內(nèi)容與官方介紹的方式有出入飘千。

Unity在工程內(nèi)提供了Plugins的方式集成其他平臺內(nèi)原生的功能調(diào)用,在Asset/Plugins/Android目錄下支持以下四種插件

  • .aar
  • .jar
  • Native c++ code
  • Extending the UnityPlayerActivity Code

前兩種將文件直接放在Plugins目錄栈雳,在unity層中就能直接調(diào)用了护奈,調(diào)用的方式可以通過AndroidJavaObject(鏈接)。項目的工程建立可以參看我之前這一篇[1]

對于Native c++ 的代碼相較于之前兩種哥纫,需要指定對應(yīng)的CPU霉旗,調(diào)用方式可以參見官網(wǎng)
針對UnityPlayerActivity則需要在Android層進行擴展,以下是繼承類示例厌秒。

import com.unity3d.player.UnityPlayerActivity;
import android.os.Bundle;
import android.util.Log;

public class ExtendedActivity extends UnityPlayerActivity {
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Log.d("OverrideActivity", "onCreate called!");
  }
}

還需要修改Assert/Plugins/Android目錄下的AndroidManifest.xml文件读拆,這個可以看作Android啟動的入口配置文件,修改它為我們繼承出來的UnityPlayerActivity鸵闪。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.company.product">
  <application android:icon="@drawable/app_icon" android:label="@string/app_name">
    <activity android:name=".ExtendedActivity"
             android:label="@string/app_name"
             android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
  </application>
</manifest>

再將這個ExtendedActivity打成jar包放在Assert/Plugins/Android目錄下檐晕,就能正常調(diào)用了,至于SDK中各類相關(guān)加載代碼直接寫在繼承出來的類中就行了蚌讼,打包方式可以也參考這里[1]辟灰,要額外注意的是要將打包生成的R.java刪除掉;當然篡石,也可以直接在AndroidStudio中打包芥喇,這里不贅述了。

各類SDK提供的方式需要將Unity工程導(dǎo)出Android工程后再將相關(guān)內(nèi)容集成至項目內(nèi)夏志,對于更新頻繁及分發(fā)渠道多種的情況需要更加自動化流程乃坤,unity本身集成了各類平臺的打包工具的目的也是為了能更加自動化的部署到各類平臺上苛让,如果是要將某個小游戲沟蔑、或者一個場景集成到一個Android APP中,這個做法是合適的狱杰,但是要為了某個功能的調(diào)用而采用這樣方法瘦材,帶來很多事倍功半的效果。集成成Plugins的方式更利于在unity中直接自定義編譯的pipeline仿畸,方便項目管理食棕。


  1. unity逆向集成友盟分享 ? ?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市错沽,隨后出現(xiàn)的幾起案子簿晓,更是在濱河造成了極大的恐慌,老刑警劉巖千埃,帶你破解...
    沈念sama閱讀 216,470評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件憔儿,死亡現(xiàn)場離奇詭異,居然都是意外死亡放可,警方通過查閱死者的電腦和手機谒臼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來耀里,“玉大人蜈缤,你說我怎么就攤上這事》肟妫” “怎么了底哥?”我有些...
    開封第一講書人閱讀 162,577評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我趾徽,道長奶陈,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,176評論 1 292
  • 正文 為了忘掉前任附较,我火速辦了婚禮吃粒,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘拒课。我一直安慰自己徐勃,他們只是感情好,可當我...
    茶點故事閱讀 67,189評論 6 388
  • 文/花漫 我一把揭開白布早像。 她就那樣靜靜地躺著僻肖,像睡著了一般。 火紅的嫁衣襯著肌膚如雪卢鹦。 梳的紋絲不亂的頭發(fā)上臀脏,一...
    開封第一講書人閱讀 51,155評論 1 299
  • 那天,我揣著相機與錄音冀自,去河邊找鬼揉稚。 笑死,一個胖子當著我的面吹牛熬粗,可吹牛的內(nèi)容都是我干的搀玖。 我是一名探鬼主播,決...
    沈念sama閱讀 40,041評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼驻呐,長吁一口氣:“原來是場噩夢啊……” “哼灌诅!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起含末,我...
    開封第一講書人閱讀 38,903評論 0 274
  • 序言:老撾萬榮一對情侶失蹤猜拾,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后佣盒,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體挎袜,經(jīng)...
    沈念sama閱讀 45,319評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,539評論 2 332
  • 正文 我和宋清朗相戀三年沼撕,在試婚紗的時候發(fā)現(xiàn)自己被綠了宋雏。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,703評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡务豺,死狀恐怖磨总,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情笼沥,我是刑警寧澤蚪燕,帶...
    沈念sama閱讀 35,417評論 5 343
  • 正文 年R本政府宣布娶牌,位于F島的核電站,受9級特大地震影響馆纳,放射性物質(zhì)發(fā)生泄漏诗良。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,013評論 3 325
  • 文/蒙蒙 一鲁驶、第九天 我趴在偏房一處隱蔽的房頂上張望鉴裹。 院中可真熱鬧,春花似錦钥弯、人聲如沸径荔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,664評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽总处。三九已至,卻和暖如春睛蛛,著一層夾襖步出監(jiān)牢的瞬間鹦马,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,818評論 1 269
  • 我被黑心中介騙來泰國打工忆肾, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留荸频,地道東北人。 一個月前我還...
    沈念sama閱讀 47,711評論 2 368
  • 正文 我出身青樓难菌,卻偏偏與公主長得像试溯,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子郊酒,可洞房花燭夜當晚...
    茶點故事閱讀 44,601評論 2 353

推薦閱讀更多精彩內(nèi)容