你是自己实现安装还是通过系统安装?
前者的话 有个监听 class PackageInstallObserver extends IPackageInstallObserver.Stub {
后者的话 可以监听广播来判断是否安装完
前者的话 有个监听 class PackageInstallObserver extends IPackageInstallObserver.Stub {
后者的话 可以监听广播来判断是否安装完
{
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(
Uri.parse("file://" + SD_PATH + fileName),
"application/vnd.android.package-archive");
context.startActivity(intent);
}
安装方法。。
这应该怎么样判断啊?
{
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(
Uri.parse("file://" + SD_PATH + fileName),
"application/vnd.android.package-archive");
context.startActivity(intent);
}
安装方法。。
这应该怎么样判断啊?
这又不是静默安装,不用判断吧
{
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(
Uri.parse("file://" + SD_PATH + fileName),
"application/vnd.android.package-archive");
context.startActivity(intent);
}
安装方法。。
这应该怎么样判断啊?
这又不是静默安装,不用判断吧
额。 那我也怎么在这安装完后,删除安装文件啊。。
我试过在这方法后面直接加删除,结果就会安装包先被删除了。。
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
if(intent.getAction().equals(Intent.ACTION_PACKAGE_ADDED)){
//Toast.makeText(context, intent.getDataString().substring(8), 2000).show();
String packName = intent.getDataString().substring(8);
//packName为所安装的程序的包名
allPackage.add(packName);
for(InstallAppInfo info:installAppMap.values()){
if(info.getPackageName().equals(packName)){
installAppMap.remove(info.getId());
JSONObject install=new JSONObject();
try {
install.put("package_name", packName);
install.put("result", true);
} catch (JSONException e) {
Log_E("in class InstallReceiver and get install object occur error");
}
callJavaScriptMethod(installcallback, install.toString());
break;
}
}
}
}
}
求大神指点啊。。private class InstallReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
if(intent.getAction().equals(Intent.ACTION_PACKAGE_ADDED)){
//Toast.makeText(context, intent.getDataString().substring(8), 2000).show();
String packName = intent.getDataString().substring(8);
//packName为所安装的程序的包名
//根据packName,再进行比对
}
}
}