(三十一)工具方法:获得应用程序包名/安装apk/如何获得当前栈顶的Activity/android如何实现点击一个按钮进入指定网页
(1)、获得应用程序包名代码
/** * 获取当前应用程序的版本号 * * @return */ private String getVersion() { try { PackageManager manager = getPackageManager(); // 获取包管理服务 PackageInfo ClientInfo = manager .getPackageInfo(getPackageName(), 0); // 获取包的信息 return ClientInfo.versionName; } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); return "版本号未知"; } }
(2)、安装apk
/** * 安装apk * * @param file */ private void install(File file) { Intent intent = new Intent(); intent.setAction(Intent.ACTION_VIEW); intent.setDataAndType(Uri.fromFile(file), "application/vnd.android.package-archive"); finish(); startActivity(intent); }
(3)、如何获得当前栈顶的Activity.
总的步骤是:
1. 得到当前运行环境(context)的Activity管理器;
2. 通过Activity管理器得到当前的任务栈信息;
3. 从任务栈中获得栈顶的Activity的名称。
String get TopActivity(Activity context) { ActivityManager manager = (ActivityManager)context.getSystemService(ACTIVITY_SERVICE) ; List<RunningTaskInfo> runningTaskInfos = manager.getRunningTasks(1) ; if(runningTaskInfos != null) return (runningTaskInfos.get(0).topActivity).toString() ; else return null ; } 最后不要忘记在AndroidManifest.xml中增加权限: <uses-permission android:name = “android.permission.GET_TASKS”/>
其中可能要用的重要的方法:
ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
RunningTaskInfo info = manager.getRunningTasks(1).get(0);
String shortClassName = info.topActivity.getShortClassName(); //类名
String className = info.topActivity.getClassName(); //完整类名
String packageName = info.topActivity.getPackageName(); //包名
4、android如何实现点击一个按钮进入指定网页
Uri uri = Uri.parse("http://www.baidu.com"); Intent intent = new Intent(Intent.ACTION_VIEW, uri); startActivity(intent);