适配ios9出现的问题:-canOpenURL: failed for URL
巴扎黑
巴扎黑 2017-04-17 16:41:05
0
13
1037
-canOpenURL: failed for URL: "wtloginmqq2://qzapp" - error: "(null)"
2015-09-13 15:51:10.903[2948:1118021] -canOpenURL: failed for URL: "mqqopensdkapiV3://qzapp" - error: "(null)"
2015-09-13 15:51:10.904[2948:1118021] -canOpenURL: failed for URL: "mqqwpa://qzapp" - error: "(null)"
2015-09-13 15:51:10.905[2948:1118021] -canOpenURL: failed for URL: "mqqopensdkapiV2://qzapp" - error: "This app is not allowed to query for scheme mqqopensdkapiV2"
2015-09-13 15:51:10.906[2948:1118021] -canOpenURL: failed for URL: "mqqOpensdkSSoLogin://qqapp" - error: "This app is not allowed to query for scheme mqqOpensdkSSoLogin"
2015-09-13 15:51:10.906[2948:1118021] -canOpenURL: failed for URL: "mqq://qqapp" - error: "This app is not allowed to query for scheme mqq"
2015-09-13 15:51:10.907[2948:1118021] -canOpenURL: failed for URL: "mqzoneopensdkapiV2://qzapp" - error: "This app is not allowed to query for scheme mqzoneopensdkapiV2"
2015-09-13 15:51:10.908[2948:1118021] -canOpenURL: failed for URL: "mqzoneopensdkapi19://qzapp" - error: "This app is not allowed to query for scheme mqzoneopensdkapi19"
2015-09-13 15:51:10.909[2948:1118021] -canOpenURL: failed for URL: "mqzoneopensdkapi://qzapp" - error: "This app is not allowed to query for scheme mqzoneopensdkapi"
2015-09-13 15:51:10.910[2948:1118021] -canOpenURL: failed for URL: "mqzoneopensdk://qzapp" - error: "This app is not allowed to query for scheme mqzoneopensdk"
2015-09-13 15:51:10.911[2948:1118021] -canOpenURL: failed for URL: "mqzone://qzapp" - error: "This app is not allowed to query for scheme mqzone"
2015-09-13 15:51:10.911[2948:1118021] -canOpenURL: failed for URL: "wtloginmqq2://qzapp" - error: "(null)"
2015-09-13 15:51:10.912[2948:1118021] -canOpenURL: failed for URL: "mqqopensdkapiV3://qzapp" - error: "(null)"

现在app在ios9运行出现了这些,查了下资料。
根据网上的做法。

iOS9 URL Schemes 

除了要在项目info URL Types中设置URL Schemes,还需要在info.plist里面增加可信任的调用app,否则回报如下错误

-canOpenURL: failed for URL: "weixin://app/wx9c8771d3c07dfd30/" - error: "This app is not allowed to query for scheme weixin"

-canOpenURL: failed for URL: "wtloginmqq2://qzapp" - error: "This app is not allowed to query for scheme wtloginmqq2"

info.plist加入

<key>LSApplicationQueriesSchemes</key>

<array>

<string>urlscheme</string>

<string>urlscheme2</string>

<string>urlscheme3</string>

<string>urlscheme4</string>

</array>

我加入之后。

本来加入之前提示:
-canOpenURL: failed for URL: "mqqopensdkapiV2://qzapp" - error: "This app is not allowed to query for scheme mqqopensdkapiV2"

加入之后,error原因就没有了。如下:

-canOpenURL: failed for URL: "mqqopensdkapiV2://qzapp" - error: "(null)"

可是仍然是fail的。不知道如何解决?

巴扎黑
巴扎黑

全員に返信(13)
大家讲道理

iOS9 を搭載した実機を使用する必要があります。シミュレーターをテストに使用しないでください。そうしないと、「-canOpenURL: URL: "XXXXXXXXXX" で失敗しました - エラー: "(null)"」が報告され続けます。実機テストは合格しました。

いいねを押す +0
小葫芦

リーリー

qq ログイン バインド、qq 支払い、qq 共有
WeChat 支払い、WeChat ログイン バインド
Sina ログイン バインド
Alipay 支払い、Alipay ログイン バインド

いいねを押す +0
小葫芦

最善の方法は、公式ドキュメントを直接読むことです

  1. http プロトコルをサポート

(1) http プロトコル情報 plist プラスに一時的にフォールバックします

リーリー

(2) 指定したドメイン名を http ホワイトリストに追加します

2 LSApplicationQueriesSchemes へのクライアント ジャンプ設定スキームが含まれます

要約: このような問題については、サードパーティを使用する場合は、他の人の公式 Web サイトを参照してください。それ以外の場合は、WeChat、QQ、Alipay などのプロバイダーの公式 API にアクセスして、開発ドキュメントを読んでください。 sharesdk、Umeng などを使用している場合は、それらの開発ドキュメントが開発者にできるだけ早く解決策を提供するので、チェックしてください。

sharesdk は iOS9 適応ドキュメントのアドレスを共有します

http://wiki.mob.com/ios9-%E5%AF%B9sharesdk%E7%9A%84%E5%BD%B1%E5%93%8D% EF %BC%88%E9%80%82%E9%85%8Dios-9%E5%BF%85%E8%AF%BB%EF%BC%89/

Umeng は iOS9 適応アドレスを共有します

http://dev.umeng.com/social/ios/ios9

他のログインに料金を払っている場合は、その公式開発ドキュメントにアクセスして確認することもできます

iOS FAQ コミュニティがあなたの質問に答えます

426981364
質問がある場合は、グループ内で直接質問できます

いいねを押す +0
迷茫

解決しました。
QQ に共有します。

を追加する必要があります

WeChat で共有するには、以下を追加する必要があります:


いいねを押す +0
迷茫

答えは見つかりましたか?追加しましたが、依然として null のエラーが報告されました

いいねを押す +0
巴扎黑

追加してもエラーは発生し続けるのでしょうか?その URL スキーム

いいねを押す +0
迷茫

追加しましたが、引き続きエラーが報告されます。URL スキームを解決する方法を知っている人はいますか?

いいねを押す +0
Ty80

このシミュレーターにはバグがあります。iOS 9 で実際のデバイスを使用している場合は、Xcode が今後のアップグレードでこの問題を修正すると予想されます。

URL スキームをテストします。テストにシミュレーターを使用しないようにしてください。そうしないと、常に

が報告されます。 リーリー

実際のデバイスを個人的にテストし、合格しました。

iOS9 の適応に関するその他の問題については、「iOS9 適応シリーズのチュートリアル」を参照してください。

いいねを押す +0
伊谢尔伦

-canOpenURL: URL: "mqzone://sdk" - エラー: "(null)" 実マシンでは引き続き報告され、<string>mqzone</string> が追加されています。 TecentOAuth が呼び出されたら、アプリを再起動するだけです

(void)logout:(id<TencentSessionDelegate>)delegate;
このメソッドは、ログイン認証を再度実行すると、先ほどのエラーを報告します。

この文は削除しました。ログアウトするときは、TecentOAuth accessToken をクリアすれば問題ありません。

いいねを押す +0
巴扎黑

アプリケーションが SSO 認証ログインやジャンプ共有などの機能を使用する場合、iOS9 でジャンプ可能なホワイトリストを追加し、ジャンプ アプリに対応する URL スキームを指定する必要があります。そうしないと、サードパーティ プラットフォームで判定されます。ジャンプ時に使用される canOpenURL は NO を返し、WebView の承認または承認/共有のみが失敗します。


いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート