1

ちょっとおかしな状況。外部パートナーと協力して、ユーザーがログインできる Web ページを公開します。この Web ページは、 というパラメーターを受け取りますreturnURL。これreturnURLは、彼らのサービスへのログインが成功したときに呼び出され、このリターン URL の最後に、外部パートナーが後でアプリケーションで使用できるトークンを追加します。

私は iOS で作業しているため、returnURL としてアプリケーションの URL スキームを指定して、ログインが完了したときに Web ページがそれを呼び出すことができるようにします。

だから、それはこのようになります。彼らのウェブページ:

http://www.theirwebpage.com/?param1=x&param2=y&returnURL=myAppsName://

私はウェブビューでウェブページを表示し、その中application:openURL:sourceApplication:annotation:にリターン用のコードがあり、渡されたパラメータを解析しますmyAppsName://

問題

webview がアプリケーションの URL スキームを呼び出し、application:openURL:sourceApplication:annotation:.

ただし、application:openURL:sourceApplication:annotation:メソッドは iOS 7 で呼び出されることはありません。webview 自体がmyAppsName://{parameters}を呼び出してから失敗するようです (詳細な説明については、UIWebView が呼び出しwebView:didFailLoadWithError:、その中NSErrorFailingURLKeyで完全な を見つけることができますmyAppsName://extraParam1=bar&token=foo)。

このタイプの呼び出し (UIWebView からアプリケーション自体への呼び出し) が許可されなくなった iOS 7 で発生した変更はありますか?

4

1 に答える 1

0

xcode 5.0 の問題。xcode バージョン 5.0.1 をダウンロードします。すべてのビルド ~/Library/Developer/Xcode/DerivedData/~ を消去します。もう一度ビルドします。

于 2013-10-29T10:42:29.540 に答える