2014-12-05 12 views
8

Sto provando a condividere alcuni contenuti su Facebook ma ho molti problemi. ho aggiunto il keyhash corretto e ho creato l'app su Facebook e l'ho messa in diretta. Quando provo a condividere qualcosa che sembra buono come si può vedere:Facebook shareDialog non mostra nulla

enter image description here

Ma dopo che ho cliccato su post è vuota: enter image description here

E 'un problema di permessi? ho letto molto su questo sulla pila, ma non riesco a trovare una risposta che funziona ... Questo è il codice:

public boolean onOptionsItemSelected(MenuItem item) { 
     switch (item.getItemId()) 
     { 
      case R.id.action_share:   
       Intent intent2=new Intent(Intent.ACTION_SEND); 
       intent2.setType("text/plain"); 
       intent2.putExtra(Intent.EXTRA_TEXT,"'"+ random + "'" + "\n"+"By Random Quotes"); 
       startActivity(Intent.createChooser(intent2, "Share via")); 
       break; 

       case R.id.randombut: 
        Frasi(); 

       case android.R.id.home: 
        Intent homeIntent = new Intent(this, MainActivity.class); 
        homeIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
        startActivity(homeIntent); 
       break; 

       case R.id.facebook: 
        FacebookDialog shareDialog = new FacebookDialog.ShareDialogBuilder(this) 
        .setApplicationName("Random Quotes") 
        .setDescription(random) 
       .setPicture("https://lh6.ggpht.com/1UJ89ho9pvVLPYS6NsFVQdb7KoQPALMhkw1w7DnNDqcfDYJ-tRxruaf2YLMLyqhnG_g=w300-rw") 
        .setLink("https://play.google.com/store/apps/details?id=com.techappstudios.randomquotes") 
        .build(); 
        uiHelper.trackPendingDialogCall(shareDialog.present()); 

     } 
     return true; 
    } 
+3

ho iniziato una causa di taglie io sono anche interessati –

risposta

0

penso che questo relativo al permesso, è necessario richiedere l'autorizzazione publish_actions. Per la prima volta Facebook chiederà di accettare la nuova autorizzazione. Una volta accettato, il sharedialog mostrerà direttamente.

Questo è quello che ho fatto, ma il codice che ho sostituito con le informazioni di condivisione.

final Session activteSession = Session.getActiveSession(); 
     if(!activteSession.isPermissionGranted("publish_actions")) { 
      Session.getActiveSession().requestNewPublishPermissions(new Session.NewPermissionsRequest(this, "publish_actions")); 
     } 
     FacebookDialog shareDialog = new FacebookDialog.ShareDialogBuilder(this) 
       .setApplicationName("Random Quotes") 
       .setDescription(random) 
      .setPicture("https://lh6.ggpht.com/1UJ89ho9pvVLPYS6NsFVQdb7KoQPALMhkw1w7DnNDqcfDYJ-tRxruaf2YLMLyqhnG_g=w300-rw") 
       .setLink("https://play.google.com/store/apps/details?id=com.techappstudios.randomquotes") 
       .build(); 
       uiHelper.trackPendingDialogCall(shareDialog.present()); 
     mFacebookUIHelper.trackPendingDialogCall(shareDialog.present()); 

Spero che questo possa essere d'aiuto.

+0

mi ha dato un errore perché devo dichiarare com.facebook.LoginActivity nel manifesto, e ho riparato, ma ora mi dà questo errore: java.lang.UnsupportedOperationException: Session: è stato effettuato un tentativo di richiedere nuove autorizzazioni per una sessione che non è attualmente aperta. –

1

Ho avuto un problema simile.

L'ho risolto cambiando da dove viene l'immagine (non chiedermi perché ha funzionato perché non lo so davvero).

Invece di afferrare il mio URL immagine da siti Web come Facebook o Google Play, ho caricato l'immagine su gethub. Con gethub, l'URL della foto è terminato in un file .png. L'immagine, il link e la descrizione sono stati pubblicati come previsto.

Provatelo. Spero possa essere d'aiuto.

+0

ho appena rimosso l'immagine e ha funzionato, ma non so come aggiungere l'immagine ora. – Rahul

0

Dall'ultimo aggiornamento di Facebook SDK, Facebook non consente il testo di precompilazione. Quindi puoi condividere l'URL solo adesso. Non è importante che tu stia usando ShareDialog o Share Intent.

Si prega di vedere sotto collegamento bug per maggiori dettagli

https://developers.facebook.com/bugs/332619626816423

+0

Questo è un bug sul metodo intent, ma sto usando la finestra di dialogo condivisa, quindi penso che sia diverso. Altre app lo stanno facendo –

+0

Penso che i bug in tutti i metodi. Anche sharer.php non funziona ora. Puoi vedere questo link https://www.facebook.com/sharer/sharer.php?u=http://www.google.com&t=hello –

+0

Ora il contenuto di precompilazione non è consentito in qualsiasi tipo di metodo di condivisione. Puoi vedere le norme di Facebook per condividere i contenuti https://developers.facebook.com/policy/#control –

Problemi correlati