2012-05-28 24 views
7

HTML dosyasında Facebook Social yorum eklentisini kullandım ve mükemmel çalışıyor, ama aynı dosyayı webview kullanarak denediğimde, sadece yorumların görüntülenmediği yorumda bulunuyor. ve "Bir yorum göndermek için facebook'a giriş yap" düğmesine basıyor. Oturum açmaya çalıştığımda, yorum kutusunu göstermek yerine o düğmeyi tıklatarak;Facebook Yorum yap Android ağ görünümünde gösterilmiyor

HTML Kodu: sayfa İşte

kodu ... facebook profile.Please yardım yönlendirildiğinde

<head> 
<meta content='website' property='og:type'/> 
<meta content='http://graph.facebook.com/username' property='fb:admins'/> 
<meta content='http://example.com/test.html' property='og:site_name'/> 
<meta content='415944175093180' property='fb:app_id'/> 
<meta content='Browser Detect' property='og:title'/> 
<meta content='Tells about Early days' property='og:description'/> 
<meta content='http://example.com/test.html' property='og:url'/> 
<meta content='http://example.com/test.html' property='og:image'/> 
</head> 
<body> 
<div id="fb-root"></div> 
<script> 
window.fbAsyncInit = function() { 
    FB.init({ 
    appId: '415944175093180', status: true, cookie: true, xfbml: true,oauth: true}); }; 
    (function() { 
    var e = document.createElement('script'); 
    e.type = 'text/javascript'; 
    e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js'; 
    e.async = true; 
    document.getElementById('fb-root').appendChild(e); 
    }()); 

    (function(d){ 
    var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0]; 
    if (d.getElementById(id)) {return;} 
    js = d.createElement('script'); js.id = id; js.async = true; 
    js.src = "//connect.facebook.net/en_US/all.js"; 
    ref.parentNode.insertBefore(js, ref); 
    }(document)); 
    </script> 
    <fb:comments href="http://example.com/test.html" num_posts="20" width="470" />  
    </body> 

Android kodu:

public class SimpleActivity Aktivite {uzanır

WebView web1; 

ViewPager awesomePager; 
    Context cxt; 
    List<WebView> data; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    this.requestWindowFeature(Window.FEATURE_NO_TITLE); 
    setContentView(R.layout.main); 
    cxt = this; 
    data = new ArrayList<WebView>(); 

    awesomePager = (ViewPager) findViewById(R.id.viewPager); 
    awesomePager.setOffscreenPageLimit(10); 

    WebView web1 = new WebView(cxt); 
    web1.loadUrl("http://example.com/test.html"); 
      WebSettings webSettings1 = web1.getSettings(); 

      webSettings1.setJavaScriptEnabled(true); 

    data.add(web1); 
      awesomePager.setAdapter(new AwesomePagerAdapter(this,data)); 

}

+0

Yorum Kutunuzun bağlanması/bağlantısı nedir? –

+0

http://example.com/test.html gibi sunucuya yüklenen basit bir html sayfası Tarayıcıda kontrol edersem iyi çalışır, ancak android açılırsa aynı bağlantı açılırsa yorum kutusunu göstermez ve izin vermez düzenlemek için. – Prax

+0

Ne yaptığınızı görmek için asıl kodlara ihtiyacım var. –

cevap

0

Bir web tarayıcısı kullanarak "standart" html'de, oturum bir şekilde kaydedilir, böylece facebook'a giriş yapmış olursunuz ve tarayıcınızı kapatsanız bile yorumları günlüğe kaydedilmiş kullanıcılar olarak bırakabilirsiniz. ve tekrar ateşleyin (çerezler, "beni günlüğe kaydet, vb.). Öte yandan, Android tarayıcı oturumu önbelleğe kaydedemeyebilir/kaydetmeyebilir, uygulama öldürülmüş olabilir, vb. Yani "her zaman açık" bir oturuma sahip olmaya daha az eğilimlisiniz.

Elbette facebook bunu tanıyacaktır ve size giriş formunu sunacaktır, çünkü yorumları anonim kullanıcı olarak bırakamazsınız.

AFAIK bir çözüm, Javascript oturumu yerine Facebook API kullanmaktır; böylece uygulamanız, kullanıcı verilerine/oturum açmış bir kullanıcı olarak yorum göndermeye kalıcı olarak izin verir.

İlgili konular