3

私はチタン プラットフォームを使用しています。iOS で SSO を実装すると、1 回でも何度でもうまく機能し、スムーズかつ完璧に機能します。しかし、私がAndroidになると、初めて機能しますが、その後は機能しません。たとえば、Android にテスト アプリをインストールし、Facebook のログインをクリックすると、初めて機能しますが、ログアウトして Facebook で再度ログインしようとすると、Facebook アプリへのリダイレクトが表示されますが、アプリのログインは行われません。 、私は何度も試し、多くの方法を試しましたが、うまくいきません。

Facebookログインイベントリスナーをapp.jsに配置し、somewindow.jsにFacebookログインボタンを配置しました。Facebookにログインした後、いくつかの作業を行っています。つまり、他のウィンドウにリダイレクトしています。

前もって感謝します。

4

2 に答える 2

1

実際にはキャッシュが原因で問題が解決しません。ログアウト時にキャッシュをクリアする必要があります。以下のコードを使用すると正常に動作します

 Titanium.Facebook.appid = "XXXXXXXXXXXXXXXXXX";
 Titanium.Facebook.permissions = ['publish_stream', 'read_stream'];


   var fbButton =  Ti.UI.createButton({
    top: 68,
    width:290,
    height:52,
    backgroundImage:"images/login/facebook.png"
});


 fbButton.addEventListener('click', function() {
if(Titanium.Facebook.loggedIn){
    Titanium.Facebook.logout()
    return
}
 Titanium.Facebook.authorize();

  });




Ti.Facebook.addEventListener('login', function(e) {
if (e.success) {
    win.close()
} else if (e.error) {
    alert(e.error);
} else if (e.cancelled) {
    alert("Canceled");
}
 });

  Titanium.Facebook.addEventListener('logout', function(e) {
    var url = 'https://login.facebook.com';
    var client = Titanium.Network.createHTTPClient();
    client.clearCookies(url);
});
于 2013-02-11T14:36:20.107 に答える
0

このフラグを使用しますTi.Facebook.forceDialogAuth=false;

于 2013-02-15T07:21:10.570 に答える