2012-10-05 9 views
13

Ich wollte die Liste aller installierten Verknüpfungen im Homescreen-Launcher programmgesteuert erhalten. Ich habe viele Schnipsel online gefunden, aber keiner von ihnen bietet den richtigen AusgangWie bekomme ich die Liste aller installierten Verknüpfungen gefunden in der Startbildschirm in Android

für diesen Schnipsel:

Intent shortcutsIntent = new Intent(Intent.ACTION_CREATE_SHORTCUT); 
ArrayList<Intent> intentList = new ArrayList<Intent>(); 
Intent intent=null; 
String launchers=""; 
final PackageManager packageManager=getPackageManager(); 
for(final ResolveInfo resolveInfo:packageManager.queryIntentActivities(shortcutsIntent, 0)) { 
launchers=launchers+"\n"+resolveInfo.activityInfo.packageName; 
intent=packageManager 
     .getLaunchIntentForPackage(resolveInfo.activityInfo.packageName); 
intentList.add(intent);  
} 

dies stellt nur die voreingestellten Shortcuts wie Kontakte, Browser, etc. nicht genau was auf dem Homescreen zu finden ist.

während dieser Schnipsel:

PackageManager pm = getPackageManager(); 
    Intent i = new Intent("android.intent.action.MAIN"); 
    i.addCategory("android.intent.category.HOME"); 
    List<ResolveInfo> lst = pm.queryIntentActivities(i, 0); 
    if (lst != null) { 
     for (ResolveInfo resolveInfo : lst) { 
      } 
     } 
    } 

stellt nur die Standard-Launcher, die com.android.launcher ist.

+0

Hey haben Sie eine Lösung davon? Ich stecke auch in einem ähnlichen Problem? Könnten Sie mir bitte helfen .. – Rahil2952

+0

Nein, habe ich nicht, ich informierte meinen Kunden, dass es unmöglich ist, diese Informationen zu bekommen und sie verstehen. –

+0

k Danke für Ihre Antwort .. – Rahil2952

Antwort

1

Meine Antwort kann zu spät sein, aber es könnte für andere nützlich sein.

meinen Code überprüfen:

if (Build.VERSION.SDK_INT <8) 
{ 
url = "content://com.android.launcher.settings/favorites?Notify=true"; 
} 
else 
{ 
url = "content://com.android.launcher2.settings/favorites?Notify=true"; 
} 

ContentResolver resolver = getContentResolver(); 
Cursor cursor = resolver.query (Uri.parse(url), null, null, null, null);