GADGET FACTORY 雑記帳

iPhone アプリ / Flash コンテンツ /Adobe AIR などを開発していて気づいたことや備忘録、TIPS、HACKなど

iOS版ipaファイルのアップロードで、app thinning process エラーが発生

Adobe AIR で制作したiPhone用アプリを複数更新する必要が出て、久しぶりにipaファイルをパブリッシュし、iTunes ストアへ登録しておりました。
ちなみに、現在利用している Adobe AIR SDKのバージョンは ver 22.0.0.153 です。

いつものように、Flashipa ファイルをパブリッシュした後、Application Loader にて、ipaファイルをアップロード。


アップロード自体は問題はありませんでした。
ところが、アップロードした後、通常ならアプリがアップロードされた旨のメールが届くのですが、一部のアプリが更新に失敗したというエラーメールが到着。

文面的には、

While processing your iOS app, *********(アプリケーション名) 1.1(バージョン名), errors occurred in the app thinning process, and your app couldn’t be thinned. If your app contains bitcode, bitcode processing may have failed. Because of these errors, this build of your app will not be able to be submitted for review or placed on the App Store. For information that may help resolve this issue, see Tech Note 2432 https://developer.apple.com/library/ios/technotes/tn2432/_index.html.

という内容。

どうやら、アプリの中で bitcode が上手く動作していないということのようです。

bitcode と言われても良くわからないので、意味を調べてみると、64bitコードへの対応などが原因として上がってきました。
しかし、今回アップデートしたアプリは、全て以前すでに64ビット対応していて、ストアでも公開済み。

となると、そこではなく、他の部分にあるように思って、さらに調査してみると、Google 関係の Framework に不具合があるとかいう情報がありました。
確かに現在使っている Admob 用の ANE は、今回のアップデートに伴って、差し替えを行っております。

もしかしたら一部のアプリでその差し替えに失敗しているのかと調査してみましたが、こちらについても他のアプリと設定は同じで、問題はありませんでした。

今回更新を行ったほとんどのアプリでは、特に問題はなくアップロードできていて、同じ設定でも一部のアプリだけがエラーが発生しているというのもどうも解せません。

今回エラーが出ているアプリについても、これまでは問題なくアップデートできていて、公開もされているアプリなので謎はますます深まるばかりです。

続きを読む

Adobe AIR で開発したiPhoneアプリが iPhone( iOS9 )でサーバーと通信できない現象への対応

ここ最近、Adobe AIR SDK を利用した、iPhone 用のアプリ開発から遠ざかっておりました。

先日ようやくリリースされた案件は、Android版は Adobe AIR SDK を使って apk を吐き出し、iPhone版は HTML5 (JavaScript)を使った WEBアプリというような組み合わせの仕事をしておりました。

iPhone版のみの場合であれば、Object-C でネイティブアプリとして開発することもしております。

そんな状況で、久しぶりに Adobe AIR SDK を利用して iPhoneAndroid向けのアプリを制作いたしました。

制作自体は問題なく順調に進行し、アプリ内課金や Admob、Google Play Store(Android版)やGame Center(iPhone版)なども、ANEを利用してこれまで通り問題なく動作させることができました。

使っていた端末でのデバッグも完了し、このままそれぞれ Google Play Store と iTunes Store へアップするだけという状況になって問題が発生しました。

iTunes Store へアップするためには、各種端末でのスクリーンショットを用意しないといけないのですが、その時にたまたま iPad用のスクリーンショットを撮ろうとしたら、アプリがアクセスしている Webサーバーとの通信でエラーが発生しました。

Wi-Fiとの接続状況が悪いからかと思ったのですが、Admob は表示されております。
手元にあった他のいくつかの端末へもインストールして、同様にテストしてみたところ、iPhone 6 Plus でも同じ現象が発生。

原因について、さらに調査をしてみると、どうやら通信できないのは、iOS9以降の端末ということが判明。

現在の最新の Adobe AIR SDK 22.0.0.153 を利用していて、その辺に原因があるのかなぁとさらに調査を進めてみました。

続きを読む

iPhoneアプリ「タップラス」本日リリースしました

表示された合計数になるように移動する数字をタップしよう!足し算ゲーム「タップラス」(無料)のiPhone版を本日リリースいたしました。

https://itunes.apple.com/jp/app/tappurasu/id1022386960?mt=8&at=1000lcz&ct=&at=1000lcz


Adobe AIR SDK と、周辺の ANE が64Bit対応できているようなので、それらを利用して制作したアプリです。
実際にアプリを申請してから、承認されるまで、大丈夫か少し不安でしたが、無事に承認されたようです。

今後は、この組み合わせで、再びアプリを作って行こうと思っております。

Adobe AIR で Android の一部の端末で文字が表示されないことがある

Adobe AIRにて開発したアプリにおいて、Androidの一部端末で、文字が表示されない現象が発生しております。

同一端末でも、発生する人と発生しない人がいたりします。

同じ Android の OSバージョンでも、発生する端末と、発生しない端末が存在していたりします。

我が家にある SONYXperia Z1」(au SOL23)では、現象が確認できませんでした。

しかし、同じ SONYXperia Z1」でも、現象が発生している人がいたりします。

現象として、確認できないものについては、対応したとしても対応できているかは分からなかったりします。

ところが先日、同現象が発生している端末を使う機会があったので、それについて調査してみました。

続きを読む

Google Play Games にアクセスすると「License check failed.」

Adobe AIRで制作したアプリで本日遭遇した事例です。

Google Play Store で公開したリリース済みのAndroidアプリを、サンプルとして一部変数の値を変更して、端末にインストールする必要があったので、Flash でパブリッシュして、そのまま端末へインストールしました。

リリースしたアプリと設定関係はほとんど変更していないのに、アプリ内の Google Play Games のランキングなどへアクセスした際に、
「License check failed.」
と表示され、動作しませんでした。

それについて、原因を調査して、その対応方法についてメモとして残しておきます。

続きを読む

Apple Watch が発表されました

昨日、かねてより発表されていた「Apple Watch」の発売日と価格が発表されました。

それに伴って、iOS も 8.2 がリリースされ、アップデートすると、「Apple Watch」 との連携用のアプリが勝手にインストールされるそうです。

Apple Watch」を使わない人でも、アンインストールできないそうです。
なんだかなぁという感じが否めませんが・・・

Apple Watch」の発売日は2015年4月24日。
Apple Store での予約は 4月10日からとなっております。

個人的に驚いたのはその価格です。
最も安いモデルは、「Watch Sports」 の 42,800円から。
ミドルモデルの「Watch」は 66,800円から。
最高級モデルの「Watch Edition」は 1,280,000円から。

最高モデルは12万8000円ではなく、128万円です。



最初、Apple Store で価格を見た時に、「Watch Edition」の価格の桁数を見間違ったのかと思いました。
次に、サイトの誤植かとも思ってしまいました。

しかし、どうやら、正しい価格だったようです。

4万円ちょっとの製品と、128万円の製品でできることの差はないようです。
となると、一体どういう人が、128万円の製品を買うのかというのが、疑問に思えてしまいます。

私のような庶民の感覚では、ちょっと分からない世界ではありますが、お金がうなるほどあるような人には、何とも思わないのかもしれませんね。

確かに、腕時計でも価格差がかなりあり、敢えて高い製品を買う人もいます。
ただ、腕時の場合は、機能や性能が陳腐化することはなく、ずっと長い間使うことができるので、高い腕時計を買うという考え方も分かります。

しかし、「Apple Watch」 の場合は、時計というよりも電子機器に近い製品。
年月が経過すると、性能的に見劣るということが発生してくると思います。

さらには、Apple の製品リリースサイクルを考えると、iPhone が毎年リリースされているように、「Apple Watch」も毎年モデルチェンジされ、性能が向上するのではないかと思ってしまいます。

iPhone は、ほぼ毎年のように iOS のメジャーアップデートを行っています。
それに伴って、iPhone の旧モデルが、その iOS のアップデート対象から外れています。

Apple Watch」についても、OSが使われています。
すなわち、その OS がアップデートされることが予想され、何年か後には、今回発売されるモデルについても、アップデートできないということになってくるのではないかと。

128万円の製品が、数年後には古い製品になってしまい、アップデートの対象から外れてしまうことを考えると、どうなんだろうかと。

リリース直後は、持っていることがステータスと考えられなくもないですが、数年後はアップデート対象から外れた古い製品として、新しくリリースされる4万円の製品に機能面で負けてしまうのです。

腕時計の場合は、単機能なので、何年経っても機能が陳腐化することはなく、逆にアンティークとしての価値が付加されるものもあります。

しかし、「Apple Watch」はそれとは明らかに違う製品。

現状では、どういった人がこの「Watch Edition」を購入するのか、知りたいと思っております。
さらには、数十年が経過して、アンティークという付加価値がつくのか、それも気になっていたりします。

MacBook PRO 15 (Early 2011)のリコール

MacBook PRO 15(Early 2011)にて、ディスクリートGPUに不具合が発生することに関して、Apple がリコールというか、無償修理を発表しました。

MacBook Pro ビデオの問題に対するリペアエクステンションプログラム」
Apple 修理サービスプログラム - Apple サポート

アメリカとカナダでは 2015年2月20日から受付開始。
それ以外の国では 2015年2月27日から受付開始とのことです。


最初の小売販売日から 3 年間または 2016 年 2 月 27 日まで (いずれか期間の長い方)までしか受け付けていないそうです。

とりあえず、我が家のマシンは発生しているので、受付が始まったら早急にリペアしてもらう予定です。