2012-02-17 3 views
3

다음 코드를 사용하여 응용 프로그램의 정보를 공유하고 있습니다.ACTION_SEND 공유 옵션 필터링

Intent sendIntent = new Intent(); 
sendIntent.setAction(Intent.ACTION_SEND); 
sendIntent.putExtra(Intent.EXTRA_TEXT, "share Content"); 
sendIntent.putExtra(Intent.EXTRA_SUBJECT, "share subject"); 
sendIntent.setType("text/plain"); 
startActivity(Intent.createChooser(sendIntent, "Share Place via")); 

위의 코드는 어떻게 든 옵션을 통해 이동하고 그 중 일부를 생략한다 달성하고 싶은 무엇 내가 공유 할 수있는 몇 가지 옵션을 표시합니다.

예를 들어 필자의 경우 페이스 북 앱이 기기에 있으면 위의 코드는이를 옵션 중 하나로 표시합니다. 내 응용 프로그램에 Facebook android SDK가 이미 통합되어 있습니다. 공유 옵션에서 Facebook 옵션을 제거하고 싶습니다.

답변

2

나는 PackageManagerqueryIntentActivities (Intent intent, int flags) 방법을 봐야한다고 생각합니다. 이렇게하면 Intent과 일치하는 Activities의 목록이 표시되고 그 중 일부를 삭제하고 사용자에게 Dialog 사용자 지정을 표시 할 수 있습니다. 사용자에게 Activities 만 표시됩니다. 그리고 사용자가 Activity을 선택한 후에는 명시 적으로 해당 Activity을 시작해야합니다.

관련 문제