これは些細な質問のように思えますが、インターネット上のどこにも具体的な答えが見つかりませんでした. stackoverflow でこの非常によく似た質問を見ました: How to start Unity application from android activity? しかし、それは私の質問とは正反対です。さらに、Android アクティビティは、PC 上で別のプログラムを開始するために行引数を指定して system() 呼び出しを使用する方法と同様に、Unity アプリケーションからいくつかの入力文字列を受信できる必要があります。
以下は、Android 上のテスト Unity アプリのテスト ボタン イベント ハンドラーのコードです。
private void ExternalAppCallHandler()
{
if(Application.platform == RuntimePlatform.WindowsEditor)
{
Process.Start(@"C:\Program Files (x86)\Notepad++\notepad++.exe");
}
else if(Application.platform == RuntimePlatform.Android)
{
Process.Start("Internet");
}
}
Unity エディターを使用してテストすると、テスト ボタンをクリックすると、アプリケーションは Notepad++.exe を正常に開きます。しかし、Samsung Galaxy S2 デバイスで「インターネット」アプリを開こうとすると失敗しました。なぜこれが事実なのか誰にも分かりますか?Process.Start を使用して別の Android アプリケーションを開くための正しい文字列は何ですか?