开发手机安全管家的时候,比如要打电话,或者照相需要知道是哪个应用程序在调用,就可以在API接口中调用下面的代码。
比如要获取打开摄像头的应用程序名称,只需要在frameworks/base/core/android/hardware/Camera.java中open()方法中加上如下代码就可以了。
Application application = ActivityThread.currentApplication();
if (application != null) {
String packageName = application.getPackageName();
try {
ApplicationInfo packageInfo= application.getPackageManager().getApplicationInfo(packageName,PackageManager.GET_META_DATA);
String appName = application.getPackageManager().getApplicationLabel(packageInfo).toString();
} catch (Exception e) {
e.printStackTrack();
}
ApplicationLabel就是应用程序名称,是定义在AndroidManifest.xml中的。
如下为Android 2.3Camera应用的写法。
其应用名称就为Camera。
来源:oschina
链接:https://my.oschina.net/u/75011/blog/163364