Skip to content Skip to sidebar Skip to footer

Get Package Name Of Another App By App Name

I want to know the package name of an app and i only know the app name of that app. suppose i want to know the package name of an email app by just its name then how to get it i ju

Solution 1:

Should be something like this, since the app name is not unique you can have multiple package names that matches your requested app name.

Keep in mind that my function will return only the first package name that matches (you can change this logic very easily):

publicStringgetPackNameByAppName(String name) {
    PackageManager pm = context.getPackageManager();
    List<ApplicationInfo> l = pm.getInstalledApplications(PackageManager.GET_META_DATA);
    String packName = "";
    for (ApplicationInfo ai : l) {
        String n = (String)pm.getApplicationLabel(ai);
        if (n.contains(name) || name.contains(n)){
            packName = ai.packageName;
        }
    }
    
    return packName;    
}

You use TextUtils.isEmpty method to check whether you got a result or not.

Solution 2:

Below is the code that will help to get Package Name of all installed apps

finalPackageManagerpkgmanager= getPackageManager();
StringTAG="Application Info";

//Return a list of installed apps.
List<ApplicationInfo> packages =  pkgmanager.getInstalledApplications(PackageManager.GET_META_DATA);

for (ApplicationInfo pkgInfo : packages) {
    Log.d(TAG, "Installed package :" + pkgInfo .packageName);
    Log.d(TAG, "Source dir : " + pkgInfo .sourceDir); 
}

Hope this will helps

Summved

Post a Comment for "Get Package Name Of Another App By App Name"