在我的代碼中,我有一個安裝在設備上的所有應用程序的數組,我想在其中找到正在運行的應用程序。要做到這一點,我寫了下面的代碼:compareToIgnoreCase不適用於Strings.xml
if (tmpPacs[I].packageName.compareToIgnoreCase("com.example.basiclauncher") == 0){
launcherPosition = I;
}
此行完美的作品,但是,我想存儲「com.example.basiclauncher」在字符串中的strings.xml像這樣:
並更改行:
if (tmpPacs[I].packageName.compareToIgnoreCase("@string/launcher_package") == 0){
launcherPosition = I;
}
這不起作用,啓動器位置在代碼執行過程中保持0,並且找不到正確的應用程序。當我回到第一行時,應用程序再次被找到。爲什麼是這樣?我怎樣才能使用strings.xml文件進行這項工作?
編輯:
我剛纔意識到,我試圖用我的java類,這顯然是行不通的內部XML代碼。感謝所有的快速回復,getPackageName()是一個更優雅的解決方案!