iOs-9-release-date

グエェェェ〜
今回はえらく厄介な問題に直面してしもた。

開発ツールを Xcode7 にして iPhone を iOS9 にアップデートしたら…
防衛軍がアプリに搭載している広告やWebページが一切表示されなくなった。

原因は iOS9 の https:// 化だっ!

iOS9 から iPhone や iPad の Web 通信は全て https: という SSL 暗号通信方式に変わった。
これによって今まで一般的な通信方式の http: は使えなくなった模様。

そうするとどうなるか?

  1. http 通信をしている広告が一切表示されなくなる
  2. 自社アプリ紹介の Web サイトが表示されなくなる

という、とても残念な事が起こる。

これって、アプリの広告クリック収入で食べている防衛軍の様な所にはまさに「死活問題」である。

まずやった事は…

防衛軍の Web サイト表示は「さくらインターネット」を使っているので、https:// 化が簡単に出来る「共用SSL」という設定を行ってみた。

結果… アクセスエラーとなり駄目だった。

原因は良く判らないが、iOS9 の SSL 通信は「TLS 1.2以上をサポートするサーバーの必要がある」なんちゃら… とか書いてあるので、その辺問題があったのかも知れない。

面倒っちいので、この件は軽く諦めた…

次にやった事は…

防衛軍の Web サイト表示は、WebView を使った http 通信で表示していたので駄目という事なので、Safari を直接起動するコマンドに変えてみた。

そうすればちゃんと防衛軍の Web サイトは表示出来たけど、ページからの「戻る」処理が上手く出来ず使い難かったので、このやり方も面倒っちいので、軽く諦めた…

取り敢えずの対策としては…

開発ツールを Xcode7 にアップデートしてしまった場合、アプリの plist.info に Apple 非推薦のコマンドを追加すれば今までのhttp: 通信は出来るので、広告や Web ページは今まで通りに表示可能となる。

しかし…
この対応は Apple 非推薦なので、今後の状況によってはリジェクト対象になって来る可能性があるので私的には不安な気持ちになる。

防衛軍の対策は…

色々調べた結果、Xcode6 を使って開発している場合は iOS9 でも前記の状況が発生しない事が判ったので…

  1. Xcode7 をダウングレードして当面 Xcode6 を使用する事にする
  2. Xcode6 では iOS9 搭載 iPhone 接続でのコンパイルが出来ないので…
  3. iPhone iOS9 をダウングレードして iOS8 に戻す
  4. 昔作ったアプリは今のままで何もしないでOK

という事にした。

という事は、将来 Apple が Xcode6 でコンパイルしたモノを受け付けなくなるまでXcode と iPhone の iOS はアップデートしてはならず、

  1. iPhone iOS は iOS8 のままで…
  2. Xcode は Xcode6 のままで…

行くしかない。

と、思ったけど…

結果、出来なかった。

何故って、俺の iPod の iOS8 用 ipsw ファイルは Apple の認証が切れてるとかで、もう永久に iOS8 にダウングレード出来ない事が判ったのだ。

くっそ〜!
残念だけど仕方ない。
こうなれば潔く iOS9 と Xcode7 で行くしかない。

という事は…
冒頭に書いた plist.info に Apple 非推薦のコマンドを追加して強引に http: 通信を可能にする!
という選択肢しか残っていない事になる。

まとめ

うむむ…
何となくスッキリしないけど仕方無い。

Apple がこの非推薦コマンドを Reject 対象にするまで防衛軍はこのやり方でセコく逃げ切る事にしたっ!

そして将来その時が来たら…

  1. 自社アプリ紹介 Web サイトの表示は諦める
  2. nend 広告を iOS9 対応の最新 Ver に切り替えて広告だけは表示可能とする

という事で行きましょうかぁ〜

しっかし、俺って技術力が無さ過ぎだわっ!

では、また〜♡