2013-04-25 6 views
1

나는 내 친구들과 뭔가를 공유하고 싶습니다. 그래서 나는 안드로이드 공유 의도를 선호했다. 나는 의미에서 트위터를 누른 경우 안드로이드 공유 인 텐트 - 페이스 북

Intent i=new Intent(android.content.Intent.ACTION_SEND); 
i.setType("text/plain"); 
i.putExtra(android.content.Intent.EXTRA_TEXT, "my share text"); 
startActivity(Intent.createChooser(i, "share via")); 

위의 텍스트 "내 주 텍스트".. 등 을 페이스 북, 트위터, Gmail은, 메시지, 스카이프와 같은 사용 가능한 응용 프로그램의 목록을 보여주는 사용 짹짹 텍스트 상자에 표시. 하지만 Facebook을 선택하면 상태 메시지가 표시되지 않습니다. 프로그램 적으로 상태 메시지를 설정하려고합니다.

어떻게하면됩니까?

+0

[Android 및 Facebook 공유 의도] (http://stackoverflow.com/questions/7545254/android-and-facebook-share-intent) – APC

답변

2

Facebook SDK에는이 버그가 있습니다. 매우 귀찮습니다. 하지만 링크를 "내 공유 텍스트"로 설정하면 Facebook 공유 상자에 나타납니다.

+0

가능한 복제본입니다. Facebook은 여러분이 Facebook 응용 프로그램을 많이 만들길 원합니다. 당신의 안드로이드 응용 프로그램에 통합. 그래서 그들은 당신의 애플 리케이션이 페이스 북을위한 정말 특별한 행동을 원하고 단지 일부 텍스트를 공유하지 않습니다. – VinceFR

+0

그래서 처음에는 왜 – Trikaldarshi

+0

덕분에 정말 도움이되었는데, 내가 원하는 모든 것이 링크였습니다. –

0

난 그냥이 코드를 내장하고 나를 위해 일하고 :

private void shareAppLinkViaFacebook() { 
    String urlToShare = "YOUR_URL"; 

    try { 
     Intent intent1 = new Intent(); 
     intent1.setClassName("com.facebook.katana", "com.facebook.katana.activity.composer.ImplicitShareIntentHandler"); 
     intent1.setAction("android.intent.action.SEND"); 
     intent1.setType("text/plain"); 
     intent1.putExtra("android.intent.extra.TEXT", urlToShare); 
     startActivity(intent1); 
    } catch (Exception e) { 
     // If we failed (not native FB app installed), try share through SEND 
     Intent intent = new Intent(Intent.ACTION_SEND); 
     String sharerUrl = "https://www.facebook.com/sharer/sharer.php?u=" + urlToShare; 
     intent = new Intent(Intent.ACTION_VIEW, Uri.parse(sharerUrl)); 
     startActivity(intent); 
    } 
} 
0

페이스 북이 트위터로 같은 상태 상자에 텍스트의 사전 채우기를 허용하지 않습니다. 그러나 우리는 페이스 북에 URL로 텍스트를 전달할 수 있습니다. 상태 상자 아래에 나타납니다. 아래 코드를 확인하십시오.

참고 : [권장]을 공유하려면 Facebook SDK를 사용하십시오. 페이스 북 SDK

ShareDialog shareDialog; 

// Sharing in Facebook using the SDK 
FacebookSdk.sdkInitialize(this); 
shareDialog = new ShareDialog(this); 

String title = "Demo Title"; 
String URL = "http://www.google.com"; 

ShareLinkContent linkContent = new ShareLinkContent.Builder() 
       .setContentTitle(title).setContentDescription(URL) 
       .setContentUrl(Uri.parse(URL)).build(); 

shareDialog.show(linkContent); 

을 통해 의도

Intent shareIntent= new Intent(); 
shareIntent.setAction(Intent.ACTION_SEND); 
shareIntent.putExtra(Intent.EXTRA_TEXT, "http://www.google.com"); 
shareIntent.setType("text/plain"); 
shareIntent.setPackage("com.facebook.katana"); 
startActivity(shareIntent); 

공유를 통해

기본 점유율은 참조를 위해 아래 링크를 확인하십시오.

Link 1

나를 쿼리 나 설명에 대해 알려주십시오.

+0

답변을 사용하는 대신에 질문을 중복으로 표시하십시오. – APC

+0

평론가님께, 죄송합니다. 내 업데이트 된 답변을 확인하십시오. –