Используйте PackageManager с намерением, чтобы получить список приложений, которые могут прослушивать намерение SEND. Из списка возвращенных приложений получите информацию, которую вы хотите отобразить, например. значок, имя и т. д. Для запуска приложения вам потребуется имя пакета, когда пользователь нажмет на него.
PackageManager pm = getActivity().getPackageManager();
Intent mainIntent = new Intent(Intent.ACTION_SEND, null);
mainIntent.setType("text/plain");
List<ResolveInfo> resolveInfos = pm.queryIntentActivities(mainIntent, 0); // returns all applications which can listen to the SEND Intent
for (ResolveInfo info : resolveInfos) {
ApplicationInfo applicationInfo = info.activityInfo.applicationInfo;
//get package name, icon and label from applicationInfo object and display it in your custom layout
//App icon = applicationInfo.loadIcon(pm);
//App name = applicationInfo.loadLabel(pm).toString();
//App package name = applicationInfo.packageName;
}
После того, как этот набор деталей приложения, вы можете использовать это в адаптере вашего GridView и показать детали.
, пожалуйста, объясните * я хочу показать список приложений в своем представлении сетки активности не в этом диалоговом окне по умолчанию * –
Я хочу получить список приложений, которые могут отправлять сообщения, чтобы я мог показать это своей деятельностью .. –
попробуйте эту ссылку для получения всех установленных приложений на устройстве http://stackoverflow.com/questions/2695746/how-to-get-a-list-of-installed-android-applications-and-pick-one-to-run – dindinii