我有一個Android應用程序,我想查看是否安裝的應用程序名稱與傳遞給包含此代碼的函數的字符串匹配。代碼和例子如下:爲什麼我的字符串比較失敗?
private Boolean checkInstalledApp(String appName){
PackageManager pm = this.getPackageManager();
Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
List<ResolveInfo> list = pm.queryIntentActivities(mainIntent, 0);
Boolean isInstalled = false;
for(ResolveInfo info: list) {
if (info.activityInfo.applicationInfo.loadLabel(pm).toString()==appName){
isInstalled = true;
break;
}
}
return isInstalled;
}
假設你叫checkInstalledApp("SetCPU");
和手機上的應用程序的名字叫做它應該返回true
同樣的事情。但是,它從來沒有。我記錄了結果,它應該匹配,但它不。任何人都可以請賜教,爲什麼這不起作用?
我明白了。這絕對是這位新人所犯的一個錯誤。謝謝。 – 2010-08-26 15:15:40