75
72

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

iOS9でLINE連携ができなくなった理由と対処法

Last updated at Posted at 2015-09-30

#背景
iOS9にバージョンアップしてしばらくたち、自分が作ったゲームアプリで遊んでいた。
このゲーム内ではアプリのシェア機能として、Facebook/Twitter/LINEの連携をしているのだけれど、Facebook/Twitterは投稿ができるのに、LINEの連携がどうしてもできない。
おかしいと思い、対処法をメモしておく。

参考:自作アプリ【くまのがっこう】ジャッキーのほしあつめ
(ちなみにフレームワークはcocos2d-xを利用している)

IMG_2792x.png

#LINE連携できなくなった理由
LINEの連携にはURLスキーマを利用しています。

調べてみたところ、iOS9からURLスキーマの扱いに変更があった模様。

iOS9からURLスキームの使用に関する変更があり、
従来のopenURLを実行するだけではカスタムURLスキームの遷移が使用できなくなりました。
※Apple公式のURLスキーム(ブラウザを開くなど)は正常に動作します。
参考:iOS9でカスタムURLスキームの遷移に失敗するときの注意点

実際にiOS9で実行をすると、以下のようなログが表示される。
iOS[351:37229] -canOpenURL: failed for URL: "line://msg/text/xxxx" - error: "This app is not allowed to query for scheme line"

LINE連携の実装は以前に書いた以下の記事に委ねます。
参考:iOSアプリにソーシャル機能を組み込む【実践編】

シェア機能の重要性や効果についてはこんな記事もどうぞ。
参考:「ねこあつめ」がなぜ人気アプリになったのか? 分析その5:ソーシャル機能を分析しよう!編

#対処方法
利用するURLスキームの内容を明らかにすることで、今まで通り利用することができます。
具体的にはinfo.plistLSApplicationQueriesSchemeskeyを追加し、カスタムURLスキームを入力します。
今回の場合は、URLスキームにlineを入力します。

スクリーンショット.png

これでシェア機能としてline連携ができるようになりました。

同じことで困っている方がいらっしゃれば、お役に立てれば嬉しいです。

75
72
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
75
72

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?