토끼를 달성 할 수있는 방법 저를한다 제안하십시오 이 코드를 통해 모든 앱을 찾을 수 있습니다. f 또는 지정된 의도 :
public static ArrayList<Availables> getAvailableAppsForIntent(Intent intent, Context context) {
ArrayList<Availables> availables = new ArrayList<Availables>();
PackageManager manager = context.getPackageManager();
List<ResolveInfo> infos = manager.queryIntentActivities(intent, PackageManager.GET_RESOLVED_FILTER);
for(ResolveInfo info : infos) {
ActivityInfo activityInfo = info.activityInfo;
IntentFilter filter = info.filter;
if (filter != null && filter.hasAction(intent.getAction())) {
// This activity resolves my Intent with the filter I'm looking for
String activityPackageName = activityInfo.packageName;
String activityName = activityInfo.loadLabel(manager).toString();
String activityFullName = activityInfo.name;
Drawable icon = activityInfo.loadIcon(manager);
Availables available = new Availables(activityName, activityFullName, activityPackageName, icon);
available.setForIntent(intent);
availables.add(available);
}
}
return availables;
}
Availables 내가이 앱에 대한 모든 정보를 저장하기 위해 만든 단지 클래스입니다하지만 당신은 그러나 당신이 원하는 관리 할 수 있습니다. 다음과 같이 앱을 시작할 수 있습니다.
Intent intent = available.getForIntent();
intent.setPackage(available.getAppPackage());
context.startActivity(intent);
희망이 있습니다.
특정 응용 프로그램과 텍스트를 공유하고 싶습니까? – Piyush
@PiyushGupta 아니요 장치에 설치된 모든 응용 프로그램과 공유하고 싶습니다. –
그래서'Intent.ACTION_SEND'를 쉽게 사용할 수 있습니다. – Piyush