0

アプリケーションにオープンソース ゲームを追加しようとしています。つまり、アプリケーションを開発しました。ユーザーがアプリケーションをインストールすると、アプリにボタンが表示され、ユーザーがボタンをタップすると、内部 apk (オープン ソース ゲーム) が開始されます。

しかし、ゲームの apk ファイルをどこに置くべきかわかりません。ゲーム apk を起動する方法がわかりません。

SDカードからapkを開始する次のコードを見つけました(推測)。

String fileName = Environment.getExternalStorageDirectory() + "/myApp.apk";
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(new File(fileName)), "application/vnd.android.package-archive");
startActivity(intent);

ただし、APK は 1 つ用意する予定です (ゲームは res/raw などの場所に配置します)。

4

1 に答える 1

2

アプリにボタンがあり、ユーザーがボタンをタップすると、内部apk(オープンソースゲーム)が開始されます。

つまり、アプリケーション(内部apk)が開始されるということは、それがどのように機能するかを理解していません。それで説明させてください:APKはWindowsシステムの.EXEのようなものではありません。つまり、APKを単に「実行」することはできません。

APKはアプリケーションを含むパッケージであり、APKを使用して実行できるのはそれをインストールすることだけです。上記のコードは、Androidアプリケーションインストーラーを呼び出しているようです。これにより、アプリがインストールされます(実行されません)。ご覧のとおり、アプリが外部ストレージ(SDカード)にある必要があります。これは、アプリのインストーラーが/ res/rawに直接アクセスできないためです。

したがって、あなたがしなければならないのは、APKをres / rawからSDCard(Googleはあなたの友達です)にコピーしてから、上記のコードを使用することです。繰り返しますが、それはアプリを実行しません、それはただそれをインストールします。インストールしたら、アプリから何かを実行して実行できます。

Intent intent = new Intent();
intent.setClassName("com.android.bla", "com.android.bla.YourActivity");
startActivity(intent);
于 2010-11-12T14:00:47.453 に答える