14

フルスクリーンのiPhoneに最適化されたWebアプリを構築しています。ホームページからネイティブアプリのように起動され、次のディレクティブを介してスタンドアロンアプリのように動作しますが、これは単なるHTML / CSS / JavaScriptであり、PhoneGapは含まれません。

<meta name="apple-mobile web-app-capable" content="yes" />

OAuthを介して認証しようとすると、Twitter(または他のOAuthプロバイダー)にリダイレクトすると、フルスクリーンWebアプリからモバイルSafariに移動します。Twitter認証が完了すると、アプリにリダイレクトしてもホームページアプリは起動せず、代わりにMobileSafari内でリダイレクトされます。iPhoneホームページWebアプリ内でOAuthを実行することは可能ですか?それが足りない場合、ホームページWebアプリを再起動するためにOAuthコールバックを取得できますか?

4

2 に答える 2

15

私は最近同様の問題を抱えており、Javascript で URL を設定すると、window.location.href="http://example.com/whatever"iOS が Safari に切り替わらないことがわかりました。この方法を使用して、Safari に切り替えることなく、スタンドアロンの Web アプリで PayPal チェックアウトと Facebook ログインを機能させることができました。フォームを送信する場合は、JS 経由でも送信し、応答からリダイレクト URL を取得して、場所を設定します。その後のアプリへのハンドバックについては、外部サービスの動作に依存します。

alert('You will be passed to Safari for authentication. Reload this app afterwards.')それがうまくいかない場合は、Safari に切り替える前にポップアップを表示できます。素晴らしいことではありませんが、アプリを自動的に切り替えることで彼らを驚かせるよりはましです!

于 2011-08-31T20:27:09.233 に答える