Unity添加多個安卓SDK解決衝突

來源:互聯網
上載者:User

標籤:void   start   直接   style   tar   ssi   activity   多個   檔案的   

Unity調用Android的方法網上有許多,這裡就不在贅述了,然而我們調用AndroidSDK時,一般都是繼承UnityPlayerActivity,然後我們從MainActivity中啟動我們的SDK。

那麼問題來了,假如在一個已經添加了Unity的SDK,並且其已經繼承UnityPlayerActivity時,我們該如何在不修改器Java檔案的情況下執行我們的SDK呢。

思路:在C#中擷取UnityPlayerActivity類,並且將其作為參數傳入方法。

 1 Unity: 2 ``` 3 AndroidJavaClass unity = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); 4 AndroidJavaObject unityActivity = unity.GetStatic<AndroidJavaObject>("currentActivity"); 5     using (AndroidJavaObject jo = new AndroidJavaObject("com.klondike.solitaire.spider.Classic.SDKBridge")) 6     { 7         jo.Call("PluginCall", unityActivity); 8         Debug.Log("調用安卓方法"); 9     }10 Java:11 public void PluginCall(Activity activity)12     {13         Log.d("PluginCall","CALLALLLLL");14     }15     16     通過這種方法,可以不必在MainActivity修改,直接啟動相關SDK17 ```18 安卓端19 ```20 MainActivity.java21 public void ShowMsg(Activity activity,String msg)22     {23         Intent intent = new Intent(activity.getBaseContext(),HelloWorld.class);24         intent.putExtra("type", msg);25         activity.startActivity(intent);26     }27     28 HelloWorld.java29 public class HelloWorld extends Activity30 {31     @Override32     protected void onCreate(Bundle savedInstanceState) {33         super.onCreate(savedInstanceState);34 //        setContentView(R.layout.activity_main);35 //        TextView showMsg = (TextView) findViewById(R.id.android_show);36         String type = this.getIntent().getStringExtra("type");37 //        showMsg.setText(type);38     }39 }40 ```

 

Unity添加多個安卓SDK解決衝突

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.