How to open application android programmatically if i don't know package name -
i know open application pro grammatically can :
intent launchintent = getpackagemanager().getlaunchintentforpackage("com.package.name"); startactivity(launchintent); however, how if don't know package name; application name ?
thanks!
edit: tried package name opening app , checking logs package name didn't show up.
maybe help, have add terrible approach app names can same different apps, , apps (like "contacts") have different labels based on language set
/** * * @param appname target app launch, if there multiple apps same name, first found launched * @throws illegalargumentexception if target app not found */ public void runapp(string appname) throws illegalargumentexception { intent mainintent = new intent(intent.action_main, null); mainintent.addcategory(intent.category_launcher); ( resolveinfo info : getpackagemanager().queryintentactivities( mainintent, 0) ) { if ( info.loadlabel(getpackagemanager()).equals(appname) ) { intent launchintent = getpackagemanager().getlaunchintentforpackage(info.activityinfo.applicationinfo.packagename); startactivity(launchintent); return; } } throw new illegalargumentexception("application not found!"); }
Comments
Post a Comment