LoginSignup
13

More than 3 years have passed since last update.

Unity-Androidアプリから明示的インテントで他のアプリを起動する

Last updated at Posted at 2018-06-20

Unity-Androidアプリから他のアプリを起動する

unityで作ったandroidアプリから
他のアプリを起動したかったから調べたら
URLスキーマを使うものしか見つからなかったので
明示的インテントで起動できるようにした。

概要

1.Unityクラスの取得
2.アプリのアクティビティ取得
3.インテントに明示的にアプリパッケージ名とアクティビティの指定
4.起動
※manifest.xmlの編集が必要かもしれない。確認中。

startActivity.cs
string PackageName = com.campany.example;//パッケージ名
string MainActivity = ".MainActivity";//スタートアクティビティ(ドット必要)

AndroidJavaClass UnityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject Activity = UnityPlayer.GetStatic<AndroidJavaObject>("currentActivity");

Intent = new AndroidJavaObject("android.content.Intent");
Intent.Call<AndroidJavaObject>("setAction", "android.intent.action.VIEW");
Intent.Call<AndroidJavaObject>("setClassName", PackageName, PackageName + MainActivity);

Activity.Call("startActivity", Intent);

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
13