安装APK程序可以通过连接PC端安装,还有通过网络下载安装。
那如何在代码里控制安装呢?
其实很简单 Intent i = new Intent(Intent.ACTION_VIEW);
String filePath = "/sdcard/XXX.apk";
i.setDataAndType(Uri.parse("file://" + filePath),"application/vnd.android.package-archive");
context.startActivity(i);
例子
首先push apk文件进去sdcard
package com.org;
import java.io.File;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
public class ApkUpLoad extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// File file = new File("/mnt/sdcard");
Intent intent = new Intent();
String filePath = "/sdcard/browser2.apk";
// intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// intent.setAction(android.content.Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse("file://" + filePath),
"application/vnd.android.package-archive");
startActivity(intent);
}
}
那如何在代码里控制安装呢?
其实很简单 Intent i = new Intent(Intent.ACTION_VIEW);
String filePath = "/sdcard/XXX.apk";
i.setDataAndType(Uri.parse("file://" + filePath),"application/vnd.android.package-archive");
context.startActivity(i);
例子
首先push apk文件进去sdcard
package com.org;
import java.io.File;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
public class ApkUpLoad extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// File file = new File("/mnt/sdcard");
Intent intent = new Intent();
String filePath = "/sdcard/browser2.apk";
// intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// intent.setAction(android.content.Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse("file://" + filePath),
"application/vnd.android.package-archive");
startActivity(intent);
}
}