안드로이드

공유 가능 앱 리스트 가져오기

2017. 3. 6. 17:31

안드로이드 공유하기에 흔히 사용하는 Intent.

공유하기 팝업을 커스텀 하고 싶을 때 list만 가져와서 dialog를 만들면 된다.


Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("text/plain");

List<ResolveInfo> resolveInfoList = context.getPackageManager().queryIntentActivities(shareIntent, 0);


​앱 선택 시 처리


ResolveInfo resolveInfo = resolveInfoList.get(selectPosition);
ActivityInfo activityInfo = resolveInfo.activityInfo;

ComponentName name = new ComponentName(activityInfo.applicationInfo.packageName, activityInfo.name);
shareIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
shareIntent.setComponent(name);

//TODO ssok by 추후 공유 메시지, url 변경 필요
shareIntent.putExtra(Intent.EXTRA_TEXT, "공유하고자 하는 문구");

startActivity(shareIntent);