2017-04-24 3 views
1

に閉じません。MessengerExtensions.requestCloseBrowser()私はこのコードでのWebViewを閉じるしようとすると、デスクトップ

MessengerExtensions.requestCloseBrowser(function success() {}, function failure(err) { 
    alert('error closing the window: ' + err); // error closing the window: 
    console.log(err); // doesn't print 
    window.close(); 
}); 

が、それはiOSの中のWebViewを閉じますが、私はデスクトップからしようとすると、警告をポップ。 私のドメインはwhite-listedであり、messenger_extensions = trueで、デスクトップメッセンジャーからページを入力してもまだ動作しません。

fetch()を使用しようとしているときに同じ問題が発生していたのですが、デスクトップ上で閉じていてもiOS上ではウィンドウが閉じていませんでした。この問題はMessengerExtensions.requestCloseBrowserの前に$ .ajax() )はfetchの約束から呼び出され、今はajaxのsuccess関数から呼び出されます。

それはiOSの

上の任意の提案を動作しませんでしたので、私は、Ajaxでフェッチ切り替える必要がありましたか?

答えて

1

翌日、2071011のエラーコードが再びデスクトップブラウザでのみ表示され始めました。 私はwindow.top.close()を使ってこの問題を回避する方法を見つけました。 MessengerExtensions.requestCloseBrowserは() を失敗したときにはクロームで同じトリックを行い、近いエッジ

0
window.extAsyncInit = function() { 
    MessengerExtensions.requestCloseBrowser(function success() { 
    window.close(); // webview closed 
    }, function error(err) {print ('an error occured');} 
    ); 

}; 

https://developers.facebook.com/docs/messenger-platform/webview/extensions上の文書、

window.extAsyncInit(から)呼び出される前にユーザーに要求しますMessenger Extensions JS SDKの読み込みが完了したとき。これをトリガとして使用して、SDKで利用できる他の 関数を呼び出すことができます。

関連する問題