2016-08-17 5 views
1

私のアプリ用のFacebook SDKを実装しようとしています。私の問題は、アプリケーションの読み込みが終了するとShare Dialogが表示されることです。ボタンを押したときにだけShareDialogが表示されるようにしたい、そうする。しかし、もう一度、私はそれがすぐに現れることを望んでいない、これは非常に迷惑になることができます。Facebookからダイアログを共有アプリが読み込まれるとすぐにSDKが表示されます

この私のコードです:私はそんなにあり、申し訳ありません

public class MainActivity extends AppCompatActivity { 

CallbackManager callbackManager; 
ShareDialog shareDialog; 
ShareLinkContent linkContent; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    FacebookSdk.sdkInitialize(getApplicationContext()); 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    callbackManager = CallbackManager.Factory.create(); 
    shareDialog = new ShareDialog(this); 

    AppEventsLogger.activateApp(this); 

    if (ShareDialog.canShow(ShareLinkContent.class)) { 
     linkContent = new ShareLinkContent.Builder() 
       .setContentTitle("") 
       .setContentDescription(
         "") 
       .setContentUrl(Uri.parse("https://www.facebook.com/globalwidemusiccom-116137701783410/")) 
       .build(); 

     shareDialog.show(linkContent); 
    } 

    ShareButton shareButton = (ShareButton)findViewById(R.id.fb_share_button); 
    shareButton.setShareContent(linkContent); 

    LikeView likeView = (LikeView) findViewById(R.id.like_view); 
    likeView.setObjectIdAndType(
      "https://www.facebook.com/globalwidemusiccom-116137701783410/", 
      LikeView.ObjectType.PAGE); 

    WebView webView = (WebView) findViewById(R.id.webView); 
    webView.getSettings().setJavaScriptEnabled(true); 
    webView.setWebViewClient(new WebViewClient()); 
    webView.loadUrl("https://globalwidemusic.com/AppGlobalWideMusic/index.html"); 

    MobileAds.initialize(getApplicationContext(), "ca-app-pub-8679652085375496~2353468367"); 

    AdView mAdView = (AdView) findViewById(R.id.adView); 
    AdRequest adRequest = new AdRequest.Builder().build(); 
    mAdView.loadAd(adRequest); 

    //new global wide music 
} 

@Override 
protected void onActivityResult(final int requestCode, final int resultCode, final Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    callbackManager.onActivityResult(requestCode, resultCode, data); 
} 



} 

、私が何をすべきかわからない、私はonClickのでShareDialogを表示しようとしているが、それはまったく表示されませんでした。ヒントやコードは大いに役立ちます。ありがとうございました。

敬具、 アレックス

+0

アクティビティのライフサイクルとイベント処理について知ることをお勧めします。 –

+0

"私はShareDialogをonClickで表示しようとしました"これを試したコードを表示してください。それは正しいことに近い。 –

答えて

1

はあなたonCreate()からshareDialog.show(linkContent);を削除し、あなたのonClick()に配置します。

+0

ありがとうございました。ここでアプリをチェックすることができます:https://play.google.com/store/apps/details?id=www.globalwidemusic.com&hl=ja – alexjr

関連する問題