2008年にApp Storeがオープンして以来、私はiOSアプリを使い続けています。ソフトウェア開発者として、この市場に魅了されてきました。当初はシンプルなアプリが次々と登場し、その後、より洗練されたアプリが次々と登場しました。そしてiPadが登場し、より大きな画面でよりパワフルなアプリが使えるようになりました。アプリの未来は明るいように思えました。
今日では、画面サイズやハードウェア機能が異なる複数のデバイス、異なるオペレーティングシステムのバージョン、そしてさらに多くのソフトウェアAPIなど、状況ははるかに複雑になっています。(これはiOSに限った話です。)
これまで、ビジネスモデルは変化してきました。当初はほとんどのアプリが前払い制でした。その後、一部のアプリは広告モデルを模索し、無料の「ライト」版と有料の「プロ」版を別々に提供するアプリも登場しました。その後、Appleがアプリ内課金を導入したことで、アプリのダウンロードは無料ながらも特定の機能に課金が必要となるフリーミアムモデルが一般的になりました。
初期のゴールドラッシュ――一夜にして億万長者になった開発者の話など――は、開発者たちが誰が最も安い料金でゲームを販売できるかを競い合う中で、急速に衰退しました。今日では、App Storeでより多くの収益が生み出されていますが、その大部分は少数の大手ソフトウェア企業に流れています。
App Storeは誕生から10年近く、波乱万丈の道のりを歩んできました。インターネット時代においては既に老齢期を迎えているとはいえ、マーケットプレイスとしてはまだ発展途上です。しかし今、App Storeは真に有用な存在へと変貌を遂げるか、一時的な流行として消え去るかのどちらかになるだろうと私は考えています。
App Store自体がなくなるという意味ではありません。実際にはなくなることはないでしょう。しかし、多くの開発者にとってビジネスチャンスが失われる可能性はあります。このディストピア的な未来において、収益性の高いアプリは、巨大企業が開発する少数のエンターテイメントアプリと、銀行や報道機関が顧客向けに開発するような「ビジネスに不可欠な」アプリだけになるでしょう。
私が直面している差し迫った脅威は、放置されたアプリです。放置されたアプリはこれまでもApp Storeの隅々にまで存在していましたが、最近になって放置されたアプリの数が増えているのは、以下の3つの理由によるものです。
- App Storeの時代は長く、多くの人気アプリや成功を収めたアプリでさえ、その寿命が尽きる時期を迎えています。デスクトップアプリでさえ、10年以上存続するアプリは稀です。テクノロジーの変化が激しすぎて、多くのアプリが時代遅れになってしまうからです。モバイルアプリは、あっという間に生き残り、あっという間に消えていきます。
- Apple は最近、開発者が何年も更新していないアプリはサポートされていないという想定で、削除し始めました。
- Apple は 1 年以上前からアプリを 64 ビット用にコンパイルすることを義務付けていますが、古い 32 ビット アプリは iOS 11 では起動すらできません (「Apple、32 ビット iOS アプリを廃止へ」、2017 年 5 月 15 日参照)。
これらの要因はそれぞれ個別に見れば、過度に警戒するほどのものではありません。しかし、これら3つが重なると、小規模な開発業者にとって壊滅的な津波を引き起こす可能性があります。
善意、重大な結果— Appleの意図は善意です。何年もアップデートされていないアプリをダウンロードする顧客は、必然的に悪い体験を生み出し、開発者のサポート不足は間違いなくAppleへの苦情を招きます。
32ビットコードを排除することも理にかなっています。アプリのサイズが縮小され、iOSは古いAPIや32ビット専用コードを削除でき、新しいものはすべてよりスムーズかつ快適に動作します。また、顧客に最新のハードウェアへのアップグレードを「促す」良い方法でもあります(古いデバイスは32ビット専用であり、iOS 11は動作しません)。
しかし、これらの問題に対する Apple の解決策には深刻な問題がある。
最も大きな問題は、iOS 9以降、iTunesでバックアップしてもアプリがコンピュータにコピーされなくなったことです。アプリを復元するには、App Storeから再ダウンロードする必要があります。ただし、Appleがアプリを古すぎる、または64ビットではないという理由で削除した場合、アプリは消えてしまい、再ダウンロードは不可能です。
Macでは、開発者が頼りにしているアプリを放棄した場合でも、簡単にバックアップコピーを作成し、必要に応じて再インストールできます。アプリが新しいバージョンのmacOSで動作しない場合は、理論的には古いバージョンから起動するか、仮想マシンでアプリを実行することができます。最悪の場合でも、少なくともデータを別のアプリに移行する方法は見つかるはずです。
iOSでは状況が異なります。Appleは、どのアプリの実行を許可するか、そしてそれらの入手方法とインストール方法を完全に管理しているため、放置されたアプリを動作させる方法はありません(脱獄する以外に方法はありませんが、脱獄自体にも重大な問題がいくつか発生します)。
また、iOS ではユーザーにファイル システムへのアクセスを許可しておらず、アプリ自体がサンドボックス化されている (つまり、アプリが別のアプリのデータにアクセスできない) ため、放棄されたアプリにデータがある場合、そのデータにアクセスできない可能性が高くなります。
データを取り出すには、次のことを前提とします。
- アプリはまだ使える
- エクスポート機能を備えていること
- エクスポートされたデータの形式が編集可能または使用可能であること
- データをインポートできる代替アプリがあること
たとえこれらの仮定がすべて真実であることが判明したとしても、エクスポートはめったに簡単ではありません。
例えば、私は古いiOSの描画アプリを使っていて、長年かけて描いた絵が50枚ほど入っています。それらを取り出すには、一つ一つ開いて自分宛にメールで送る必要があり、そのたびにエクスポートオプションをいくつか設定しなければなりません。すべての絵をエクスポートするのに何時間もかかり、その過程でデータの一部が失われてしまいます。例えば、テキストが編集できなくなったり、レイヤーが結合されたり、他のアプリで描画の一部が異なってレンダリングされたりするなどです。
別の種類の問題として、多くのiOSアプリはデータ作成を伴わず、クラウドからデータをダウンロードするサービスとして実行されるという点が挙げられます。その好例が「Check The Weather」アプリです。このアプリは、現在地の天気と予測を表示するのにインターネットサービスを必要とします。しかし残念なことに、「Check The Weather」の開発者は最近、費用が高すぎるとして天気予報ネットワークの停止を決定しました。そのため、私が長年有料で使ってきたアプリが、何の前触れもなく突然動作しなくなってしまったのです。
もちろん、「Check The Weather」の開発者が天気予報ネットワークへの支払いを継続できなかったのは、本質的にAppleの責任ではない。しかし、間接的にはAppleのポリシー、特にすべてのアプリアップデートを常に無料とユーザーに約束していることが影響している。開発者がアップデートを課金できないと、継続的な開発と運用に資金を提供する共通の収入源が失われてしまう。さらに、App Storeは開発者に対し、顧客に不測の事態や代替アプリの存在を知らせるための連絡手段を提供していない。
Check The Weather のことを知ったのは、開発者に連絡して、なぜ動作しなくなったのか尋ねた時でした。開発者は、何ヶ月も前に自分のウェブサイトにブログ記事を書いたことがあると言っていました。どうしてそんなことが分かるというのでしょう?iPadには600個近くのアプリが入っているのに、それら全部の開発者のブログをチェックしないといけないのでしょうか?
プロフェッショナルな環境? — AppleはiOSがプロフェッショナルな仕事に対応できるというコンセプトを積極的に宣伝しています。特にAppleは、iPad Proを多くの労働者にとってノートパソコンの代替として認識してもらいたいと考えています。議論の便宜上(もし議論がそれしかなかったらですが)、Appleの主張が正しいと仮定してみましょう。
アプリが消えて再インストールできず、何年もかけて蓄積したデータが失われる可能性があるようなプロフェッショナル環境とはどのようなものでしょうか?
一般的な家庭ユーザーにとっては、放置されたアプリによってデータが失われても、単に迷惑なだけかもしれませんが、企業や専門家にとっては大きな損害となる可能性があります。
企業は変化に鈍感になりがちです(壊れていないものは直さない)。特に移行に問題がある場合はなおさらです。Windows XPをまだ使い続けている企業がどれだけあるか、考えてみてください。
アプリの放置を奨励するApple のポリシーにより、多くの企業はアプリやデータへのアクセスを失うことを恐れて、iOS 11 へのアップグレードを遅らせたり回避したりすることになるだろう。
Appleが64ビット化を強行したことで、今年さらに多くのソフトウェアが廃止されるにつれ、その影響に苦しむ人も増えるでしょう。多くの人にとって大した問題ではないかもしれませんが、一部の人にとっては深刻な問題となる可能性があります。
iPadとiPhoneを見てみると、現在、それぞれ101個と58個の32ビットアプリが廃止されています。これは、私のデバイスにあるアプリ全体の約25%に相当します。
(iOS 10.3.1 以降を実行している iOS デバイスで上記のリストを表示するには、[設定] > [一般] > [情報] > [アプリケーション] に移動します。)
はい、これらのゲームの多くは私が何年もプレイしていない小さなゲームであり、代替として新しいバージョンがあるアプリもあります(意図的にアップグレードしなかったか、新しい別のバージョンがあることを知らなかったかのどちらかです)。
ZiteやBentoなど、何年も前に廃止されたアプリもいくつかあります。しかし、廃止されたアプリが今でも使えるのであれば、使うのをやめるかどうかは私自身が決めるべきではないでしょうか?
これらのアプリの一部は、iOS 11 の必須の 64 ビット カットオフの前に新しいバージョンがリリースされる可能性がありますが、各開発者に確認しない限り、そうなるまではわかりません。
さらに問題なのは、私の古いアプリの約4分の1にデータが含まれていることです。リストには、多数の文章作成・描画アプリ、6つの写真編集アプリ、複数のニュースアプリ、そして多数の「コンテンツ」アプリ(言語データベース、書籍を収録したアプリなど)が含まれています。
これらのアプリは、決して珍しいものでも珍しいものでもありません。大手デベロッパーや大企業が提供しているものが多くあります。Fox、HGTV、Sci-Fi Channel(この新しい意味不明な綴りは使いたくありません)、Adobeなど、他にもたくさんのアプリがあります。
Martha Stewart's CraftStudioというアプリを使って、グリーティングカードを自作しています。Marthaはしばらく前にこのアプリを使わなくなってしまいました(彼女がXcodeを使っていた姿を想像するのが好きです)。でも、私が持っているバージョンはまだ問題なく動いています。残念ながら、iOS 11にアップグレードすると、このアプリが使えなくなり、今まで作ったグリーティングカードのデザインがすべて消えてしまいます。
一番気がかりなのは、これらのアプリの多くに私がお金を払っていたことです。一つ一つのアプリにそれほどお金を払っていたわけではありませんが、全体としては、もっと長く使えるだろうと予想していたアプリに数百ドルも費やしていたのです。
最悪なのは、私の古いアプリの中にはハードウェアにリンクされているものがあることです。例えば、何年も前にiPhoneのアプリで操作するおもちゃの車を買ったのですが、そのアプリは私の古いアプリリストに載っています。アプリが壊れると、車も使えなくなってしまいます。1500ドルもするドローンじゃなくてよかった!
もう一つの32ビットアプリでは、小さなフラッシュメモリ「ハードドライブ」をワイヤレスで利用して、iPad/iPhoneのストレージ容量を追加できます。(旅行中は、飛行機で観る映画をこのドライブに保存しています。)iOS 11にアップデートすると、このドライブは使えなくなりますし、普通のアプリよりもかなり高価でした。これは困りものです。
アプリが廃止されたらハードウェアが動かなくなるという恐ろしい話は他にも聞いたことがあります。でも、実際にそれを経験すると、防犯カメラ、キッチン用品、おもちゃなど、アプリが必要なデバイスを買うのをためらうようになりました。
こうしたことから、今後はアプリにお金を使うことにもっと慎重になるつもりです。App Storeが初めて登場した頃は、デスクトップ版の価格に慣れていましたし、プログラマーとして開発者の努力に少しお金を払うのは喜んでいました。しかし今では、多くの開発者がアプリの開発を放棄し、Appleが他のアプリを意図的に時代遅れにしているのを目の当たりにしているので、App Storeではあまり買わないでしょう。
記憶が正しければ、以前はアプリに毎月10ドルから25ドル使っていました。2016年には平均5ドル以下にまで減ったでしょう。2017年はさらに減るでしょう。
次はMacアプリか— iOSから32ビットの不要なデータを取り除くのは理にかなっているものの、Mac側のリソースはそれほど限られていません。さらに、ほとんどのアプリはMac App Storeから入手できないため、Appleはインストールされるアプリをあまり制御できません。
それにもかかわらず、6月に開催されたAppleのWWDC開発者会議で、AppleはmacOSの次期バージョンであるHigh Sierraについて発表を行い、Macの32ビットサポートがまもなくなくなるかもしれないと示唆した。
Appleの声明では、Mac App Storeが64ビット対応を必須としていることは明確に述べられていますが、Mac App Store以外で配信されるアプリについては曖昧です。Appleは開発者に対し64ビット対応を「強く推奨」し、「macOS High Sierraは、32ビットアプリを妥協なくサポートする最後のmacOSリリースとなります」と締めくくっています。
これは、一部のアプリは動作するが、他のアプリには問題が発生する可能性があるという意味だと解釈していますが、具体的にどのような問題が発生するのかは分かりません。「妥協なし」とは、古い32ビットアプリの動作が遅くなるという意味で、Intelプロセッサへの移行時にPowerPCエミュレーションが遅くなるのと似ていますが、全く動作しないということとは全く異なります。
High Sierraの後継となるmacOSのバージョンがリリースされるまでには1年以上かかるため、解決策を見つける時間は十分にあります。ほとんどのアプリは再コンパイルするだけで64ビット化できますが、開発中ではない古いアプリには役に立ちません。
解決策は何ですか? — これまでは問題に焦点を当ててきましたが、解決策はどうでしょうか?
Apple が、サポートされていないアプリを App Store から排除することに関心を持っていることは理解していますし、32 ビットのアプリを排除することがエンジニアリング上の正当な目標であることにも同意しますが、同社のやり方は過酷です。
古いアプリをApp Storeの「古い」セクションにまとめて置くのはいかがでしょうか? 廃止タグを付けましょう。ユーザーが「検索結果に廃止アプリを含める」オプションを選択しない限り、App Storeのデフォルトの検索でこれらのアプリが表示されないようにしましょう。ダウンロード時には、アプリが廃止されサポートされていないことを警告しつつも、必要に応じてダウンロードして使えるようにしておきましょう。
Appleが開発者にApp Storeを通じてすべての顧客と直接コミュニケーションを取ることを認める可能性は低いと思われますが、開発者に代わってアプリユーザーに連絡することは可能です。Appleが廃止されたアプリに関する情報、例えば新バージョンへのリンク、データのエクスポート方法、代替アプリの提案などをユーザーに提供できれば、大きな効果が得られるでしょう。しかし、よく考えてみると、Appleがそのようなことをすることはないだろうと思います。
しかし、Appleは、購入したアプリがApp Storeから削除された際にユーザーに通知することができます。これにより、開発者がアプリの開発を中止する可能性があることを警告し、ユーザーに詳細情報を確認するよう促すことができます。
(例えば、新しいiPhoneに移行したときに、いくつかのアプリが消えたことに気づきました。それらのアプリがApp Storeから削除され、復元できないと知ったときはショックでした。知っていたら準備できたのに、警告は受けませんでした。)
Appleは、大手企業以外の開発者の経済的成功を促進するために、より多くの対策を講じるべきです。例えば、アプリの発見性向上、有料アプリのアップグレードの許可、「クローン」アプリやゴミアプリの削除などです。収益につながらないためにアプリが放置されているのであれば、Appleがその問題に対処するためにできることは何でも、大きな助けとなるでしょう。
公平を期すために言うと、AppleはApp Storeの改善に取り組んでおり、特にレビュープロセスの迅速化が顕著です。そして、開発者と顧客の両方に不利益をもたらしてきた長年のポリシーを改め、ついに開発者が顧客のレビューに返信できるようになりました。iOS 11ではApp Storeの外観が一新されます。アプリの発見率や売上が改善するかどうか、あるいは単にタイタニック号のデッキチェアの配置換えに過ぎないかどうか、今後の展開に注目です。
できること— Appleがアプリを列車の最後尾から追い出すことにどう対応するかは、もちろんあなた次第です。しかし、私のアプローチはこうです。自由にコピーしたり、必要に応じて変更したりしてください。
iOSは非常に高性能で、一人の人間にとって唯一のコンピューターになる可能性もあると思っていますが、放置されたアプリに何度も遭遇したため、警戒心を抱くようになりました。もはやiOSを「プロフェッショナル」な環境だとは思っていません。
アプリはいつ消えてしまうかわからないので、私はアプリを買うために大金を費やすつもりはありませんし、アプリの使い方を習得したり使用したりするために多大な時間と労力を費やすつもりもありません。そして、このような行動は売上の減少や、開発者の「プロフェッショナル」なアプリ開発への関心の低下につながることは承知しています。
実際の業務で使う可能性のあるiOSアプリを評価する際、独自のデータストレージを備えたアプリは避けます。クラウド(できればDropbox)にデータを保存できるアプリや、標準的なデータ形式を採用しているアプリを積極的に探します。
アプリを導入する前に、必ずエクスポート機能があるかどうかを確認します。そして、それらの機能をすぐにテストして、実際に動作するかどうかを確認します。
次のプロジェクトは、放置したアプリのリストを整理し、重要なアプリの代替品を探すことです。ただし、多くのアプリについては、iOSアプリの代替品ではなく、Mac向けの代替品を探すつもりです。お気に入りのiOSアプリをいくつも失ったので、もうApp Storeを信用できなくなっています。
(この記事のバージョンは、もともと 2017 年 5 月に xDev Magazine に掲載されました。)