我有一个非常简单的函数,如下所示:publicstaticbooleanisAppInstalled(StringpackageName){PackageManagerpm=MainApp.get().getPackageManager();try{pm.getPackageInfo(packageName,PackageManager.GET_ACTIVITIES);returntrue;}catch(PackageManager.NameNotFoundExceptione){returnfalse;}}有时这会在具有以下堆栈跟踪的getPackageInfo行崩溃:java.la
我的应用使用WebView。从L-preview开始,引入了一个新的功能过滤器:FEATURE_WEBVIEW。声明您的应用只能安装在完全实现android.webkit.*API的设备上。示例:来源:http://developer.android.com/preview/api-overview.html#Manifest我想了解此功能过滤器的影响和原因。哪些设备不会实现完整的android.webkit.*API?如果我将此行添加到我的AndroidManifest.xml中,我希望我的应用程序仍可用于Android2.3-4.4。这是真的吗? 最佳答
什么是包管理器?使用它的目的是什么?以下方法描述了什么?:getPackageManager()getApplicationInfo()获取包名()谁能给出详细的描述,因为我无法在Android开发者指南中获得完整的信息。还有一个包含所有方法的示例程序。 最佳答案 Android包管理器提供与Linux包管理器类似的功能。http://en.wikipedia.org/wiki/Package_manager来自theAPIdocs:“[这是一个]类,用于检索与当前安装在设备上的应用程序包相关的各种信息。”想知道安装了哪些应用程序?
我正在使用PackageManager.getApplicationLabel(ApplicationInfo)获取应用程序名称。但是这个名称可能会根据设备区域设置和应用程序资源字符串而改变。所以我想知道是否有任何方便的方法来获取指定的本地化标签(如果不存在则返回null)?如PackageManager.getApplicationLabel(ApplicationInfoinfo,LocaleprefereLocale)? 最佳答案 首先,让我们描述获取标签的操作顺序:获取ApplicationInfo(应用信息有publici
如果我使用下面的代码禁用AndroidManifest.xml中定义的静态BroadcastReceiver,它会在重启后重新启用吗?它似乎不是,但文档没有说明是否应该。finalComponentNamecompName=newComponentName(context,MyBroadcastReceiver.class);context.getPackageManager().setComponentEnabledSetting(compName,PackageManager.COMPONENT_ENABLED_STATE_DISABLED,PackageManager.DONT_
我的应用程序中有一个Activity,其中生成了所有已安装应用程序的ListView。除了应用程序名称外,还会显示应用程序图标。我创建了一个对象数组,其中包含有关应用程序的所有信息,其中包括图标,并使用以下方法检索图标:drawableAppIcon=mPackageManager.getApplicationIcon(apps.applicationInfo);在哪里application是目的。这样做的问题是,虽然我很容易访问所有可绘制对象,但各种应用程序似乎会提取各种质量的可绘制对象;一个应用程序图标将具有极高的分辨率,而另一个将是低分辨率版本。我本以为上面的代码行会考虑屏幕尺寸
PackageManager.DONT_KILL_APP的API文档说:Becarefulwhenyousetthissincechangingcomponentstatescanmakethecontainingapplication'sbehaviorunpredictable.不幸的是,他们没有详细说明不可预测行为的含义。在我的应用程序中,我正在切换Activity的启用状态。首先,一个服务启用Activity并启动它:getPackageManager().setComponentEnabledSetting(newComponentName(MyService.this.ge
我有一个使用相机功能的应用程序,但它的部分功能也可以在没有相机功能的情况下运行。所以我把它放在我的list中。在我的代码中,我使用这个检查设备是否有摄像头finalbooleandeviceHasCameraFlag=pm.hasSystemFeature(PackageManager.FEATURE_CAMERA);现在我正在运行Android4.0(ICS)且没有摄像头的平板电脑上测试我的代码。但我仍然获得了deviceHasCameraFlag的True值。这很奇怪还是我遗漏了什么。我尝试了不同的东西,甚至在蓝牙功能上尝试了同样的东西,因为平板电脑甚至没有蓝牙功能。它适用于蓝牙,
有没有办法检索用于签署APK的key的签名?我用我的keystore中的key签署了我的APK。如何以编程方式检索它? 最佳答案 您可以像这样使用PackageManager类访问APK的签名签名http://developer.android.com/reference/android/content/pm/PackageManager.htmlSignature[]sigs=context.getPackageManager().getPackageInfo(context.getPackageName(),PackageMan
有没有办法检索用于签署APK的key的签名?我用我的keystore中的key签署了我的APK。如何以编程方式检索它? 最佳答案 您可以像这样使用PackageManager类访问APK的签名签名http://developer.android.com/reference/android/content/pm/PackageManager.htmlSignature[]sigs=context.getPackageManager().getPackageInfo(context.getPackageName(),PackageMan