4

アセットフォルダーからプログラムで apk をインストールしようとしていますが、成功しません。助けてください。そのために次のコードを使用しています。ありがとうございました。

Intent intent = new Intent(Intent.ACTION_VIEW)
.setData(Uri.parse("file:///android_asset/youtuberanjit.apk"))
.setType("application/vnd.android.package-archive");
startActivity(intent);
4

2 に答える 2

15
AssetManager assetManager = getAssets();

InputStream in = null;
OutputStream out = null;

try {
    in = assetManager.open("myapk.apk");
    out = new FileOutputStream("/sdcard/myapk.apk");

    byte[] buffer = new byte[1024];

    int read;
    while((read = in.read(buffer)) != -1) {

        out.write(buffer, 0, read);

    }

    in.close();
    in = null;

    out.flush();
    out.close();
    out = null;

    Intent intent = new Intent(Intent.ACTION_VIEW);

    intent.setDataAndType(Uri.fromFile(new File("/sdcard/myapk.apk")),
        "application/vnd.android.package-archive");

    startActivity(intent);

} catch(Exception e) { }
于 2012-10-01T12:20:00.543 に答える
-4

apk ファイルを assets フォルダーにコピーします。

私のために働いたこの方法を試してください........

private void launchComponent(String packageName, String name) { 

  // Name should be starting activity complete name with package name
        Intent launch_intent = new Intent("android.intent.action.MAIN");
        launch_intent.addCategory("android.intent.category.LAUNCHER");
        launch_intent.setComponent(new ComponentName(packageName, name));
        launch_intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

        this.startActivity(launch_intent);
    }
于 2013-11-20T06:52:07.177 に答える