import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.provider.Settings;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
/**
* 到插入apk页面
* @author Administrator
*
*/
public class MainActivity extends Activity implements OnClickListener{
private Button Bt;
private static final String SCHEME = "package";
/**
* 调用系统InstalledAppDetails界面所需的Extra名称(用于Android 2.1及之前版本)
*/
private static final String APP_PKG_NAME_21 = "com.android.settings.ApplicationPkgName";
/**
* 调用系统InstalledAppDetails界面所需的Extra名称(用于Android 2.2)
*/
private static final String APP_PKG_NAME_22 = "pkg";
/**
* InstalledAppDetails所在包名
*/
private static final String APP_DETAILS_PACKAGE_NAME = "com.android.settings";
/**
* InstalledAppDetails类名
*/
private static final String APP_DETAILS_CLASS_NAME = "com.android.settings.InstalledAppDetails";

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.apk);
Bt = (Button)this.findViewById(R.id.button);
Bt.setOnClickListener(this);
}


@Override
public void onClick(View V) {
switch(V.getId()){
case R.id.button:
//softManger(this, "cn.com.opda.android.battery");
// 第二个参数是在/data/app下的apk的包名
showInstalledAppDetails(this, "cn.menu");
break;
}

}



public static void showInstalledAppDetails(Context context, String packageName) {
Intent intent = new Intent();
final int apiLevel = Build.VERSION.SDK_INT;
if (apiLevel >= 9) { // 2.3(ApiLevel 9)以上,使用SDK提供的接口
intent.setAction(Settings.ACTION_APPLICATION_SETTINGS);
Uri uri = Uri.fromParts(SCHEME, packageName, null);
intent.setData(uri);
} else { // 2.3以下,使用非公开的接口(查看InstalledAppDetails源码)
// 2.2和2.1中,InstalledAppDetails使用的APP_PKG_NAME不同。
final String appPkgName = (apiLevel == 8 ? APP_PKG_NAME_22
: APP_PKG_NAME_21);
intent.setAction(Intent.ACTION_VIEW);
intent.setClassName(APP_DETAILS_PACKAGE_NAME,
APP_DETAILS_CLASS_NAME);
intent.putExtra(appPkgName, packageName);
}
context.startActivity(intent);
}
}

转自:http://www.devdiv.com/article-2306-1.html

更多相关文章

  1. android 调用第三方软件打开pdf文件
  2. android如何调用Web Service手机归属地练习
  3. Android使用View类动画
  4. Android(安卓)PopupWindow做的分享界面
  5. android API Demo之使用ViewFlipper制作轮播广告
  6. 调用Android系统设置项
  7. 箭头函数的基础使用
  8. NPM 和webpack 的基础使用
  9. Python list sort方法的具体使用

随机推荐

  1. Android官方Toolbar自定义高度最靠谱的解
  2. Android(安卓)Framework中的线程Thread及
  3. Android(安卓)终极屏幕适配方案
  4. 从0开始认识android(十五):点击链接启动APP
  5. Android(安卓)studio无法连接识别检测各
  6. (转)android底部菜单应用
  7. Android:用Handler实现异步处理功能
  8. Android安全机制--操作系统安全机制-进程
  9. android布局文件详解
  10. Android(安卓)更换系统主题app