Holen Sie sich alle installierten Anwendungssymbole in Android: java.lang.ClassCastException

Da ist einjava.lang.ClassCastException wenn ich versuche, ein installiertes Anwendungssymbol zu erhalten.

Hier ist mein Code.

public Bitmap getAppIcon(String path) {
        PackageInfo pi = pm.getPackageArchiveInfo(path, 0);
        pi.applicationInfo.sourceDir = path;
        pi.applicationInfo.publicSourceDir = path;
        Drawable icon = pi.applicationInfo.loadIcon(pm);
        Bitmap APKicon = ((BitmapDrawable) icon).getBitmap();
        return APKicon;
    }

woher,pm ist

PackageManager pm = getPackageManager();

und der Fehler in derLogCat ist

Caused by: java.lang.ClassCastException: android.graphics.drawable.NinePatchDrawable cannot be cast to android.graphics.drawable.BitmapDrawable

Hoffe, jemand kann mir helfen.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage