【iOS・Android】個人アプリ開発:検証機の必要性と、おすすめの調達方法3選

※当サイトは、アフィリエイト広告を利用しています

アプリ開発

個人でスマホアプリの開発を始めたけど、実機の検証端末って必要?

シミュレーター/エミューレーターだけじゃ不十分?

必要だとしても、たくさんの実機を揃えるのはお金もかかる。。効率的な調達方法は?

という方向けの記事です。

 

個人アプリ開発をするにあたり、同じ悩みにぶつかったのですが、参考になる情報を探しても見当たらず、手探りで今の状態に落ち着いたので、その経験を共有したいと思います。

 

自分なりの結論は、以下のとおりです。

 

  • 実機の検証端末(スマホ・タブレット)は必要!
  • 数を集めるため、家族にも協力をお願い!
  • 不足する機種は、低コストで調達するため、中古スマホショップを活用!

 

以下、詳細になります。

 

同じ悩みを持つ方のご参考になれば幸いです。

 


40代からプログラミング(Flutter)を始めて、GooglePlayAppStoreにアプリを公開しているhalzo appdevです。

 

作成したアプリはこちら↓ 全てFlutterで開発したアプリです。

 

検証用の実機は必要

アプリの開発環境には、PC上で検証できる、iOSシミュレーター・Androidエミューレーター(以下、総称して「シミュレーター」と記載します)があるので、実機での検証は不要と思われるかもしれません。

 

しかし、以下の理由から、検証用の実機は必須と考えています。

 

シミュレーターと実機とでは、挙動に違いがある

最も大きな理由がこれになります。

 

例えば、iOSシミュレーターでは、カメラを起動できません

 

iOSシミュレーターでカメラを起動しようとすると、「Camera not available.」のエラーになる。

 

そのため、カメラ機能を使うアプリの場合は、iOS実機(iPhoneまたはiPad)での検証が不可欠になります。

 

シミュレーターでは検証できないことがある

シミュレーターには、無駄なアプリは一切インストールされていません。

 

iOSの場合は、AppStoreからのインストールも制限されています。

 

そのため、メモリ容量を大きく消費するアプリの場合、普段使いしている実機だとメモリオーバーでクラッシュするような状態を、検知できません。

 

実機の挙動を確認することで、エラーの原因に気づけることがある

これも実機があることのメリットの一つです。

 

同じソースコードであっても、シミュレーターだとエラーになるけど、実機だとエラーにならない、というケースもあります。

 

下記記事でも紹介しましたが、シミュレーターと実機での挙動の違いを確認することで、ソースコード修正の要否や、修正すべき点に気づくキッカケを得ることができます。

 

 

以上の理由から、やはり検証用の実機は持っておいた方が良いです。

 

どんな検証機を用意すればよいか?

最新OSバージョンにアップデート可能な実機を用意

どんな実機を用意すればよいのか?という点ですが、例えば、FlutterでiOS・Android両方のアプリを開発する場合には、やはりiOS、Android両方の実機を用意すべきです。

 

そして、最新のOSバージョンに対応できる実機が望ましいです。

 

理由は、最新のOSバージョンでは、旧バージョンで発生しなかった想定外のエラーが出る場合があるためです。

 

下記は、最新のOSバージョンで検証していなかったため、後で苦労する事になった自分の体験例です。

 

AndroidのOSバージョンが、最新よりも1バージョン古い状態の実機で検証を行い、そのままリリースしようとしたが、Google Play Consoleのリリース前レポートで、クラッシュ報告を受けた。

調べたところ、最新のOSバージョンでは、あらかじめ「build.gradle」ファイルに、特定のコードを追記しておかないと、アプリ起動時にクラッシュしてしまう問題があることが分かり、リリース直前で手間取ることになった。

 

 

 

最新のiOSバージョンの仕様変更により、アプリ起動時に、これまで問題なく表示されていたダイアログが表示されない状況になっていた。

しかし、古いiOSバージョンの実機で検証していたため、この事象に気づけず、AppStoreの審査でリジェクトされ、リリース直前で大幅な改修をする羽目になった。

 

  

こうした経験から、最新OSの実機で検証することが重要だと痛感しています。

 

できれば各OSで2台ずつあるとベター

欲を言えばですが、各OSで2台ずつあると、最新OSバージョンの端末と、古いOSバージョンの端末を用意できるので、異なる環境下で検証でき、不具合の検知漏れを防ぐことができます。

 

特に、最新OSバージョンが出た直後は、すべてのユーザーがOSをバージョンアップするわけではないので(むしろバージョンアップ直後は不具合が見つかるので、あえてバージョンアップしないユーザーも多いと思います)、旧バージョンのユーザーも一定数いることを想定する必要があります。

 

実機で2台用意するのが難しい場合は、新・旧複数のOSバージョンでシミュレーターを作成して検証する手もあります。

 

しかし、iOSの場合、最新OSバージョンのシミュレーターを作成するには、XcodeやMacOSのバージョンのアップグレードが求められる場合がある点に、注意が必要です。

 

 

自分の経験でも、最新バージョンのiOSのシミュレーターで検証しようとした際、MacOSのアップグレードが必要と分かったのですが、タイミング的に避けたかったので(MacOSのアップグレードにより、開発環境が変化し、不具合を生じる場合があるため、、)、結局、2台あったiOS実機の片方をバージョンアップして乗り切ったことがあります。

 

実機端末の調達方法3選

①古い端末を残しておく

アプリ開発をする方は、ご自身のスマホを買い換える際、できるだけ古い端末は手元に残しておくと良いです。

 

キャリアの通信状態が影響するアプリを開発している場合は別ですが、大抵の場合は、WiFi通信ができれば必要な検証はできるので、買い替え時は、検証用端末の確保チャンスと捉えると良いと思います。

 

自分の場合は、使わなくなった古いiPadがあり、過去に売ることを考えた時期もありましたが、アプリ開発をするようになってから、検証機として大活躍しています。

 

iPadは、iPadアプリの検証はもちろん、iPhoneアプリの検証にも使用でき、OSバージョンアップも可能なので、自分は最新iOSバージョンの実機検証用に使用しています。

 

iPad上で、iPhoneアプリを実行した状態(スマートフォンサイズで表示される)

 

ちなみに、Macも2台あると都合が良いので、買い替え時には下取りに出さずに、とっておくのがおすすめです。

 

前述のとおり、iOSの開発では、MacOSのバージョンアップが求められる事があるのですが、作業進捗のタイミング等で、開発環境を変えたくない場合は、とりあえず古いMacの方をバージョンアップして試してみる、ということが可能です(実際、自分も古いMacBookを手元に残しており、現在もサブ機として活躍してくれています)。

 

②家族の端末を使う

家族にお願いできる方は、協力を依頼するのも手です。

 

調達コストを抑えるためにも、使える端末はできるだけ使いましょう!

 

仕事で会社から支給された端末を使うのは望ましくないですが、家族の個人利用の端末であれば、是非、TestFlight(iOS)や、内部テスター(Android)に登録してもらいましょう。

 

家族間で、OSのバージョンが異なる場合もあると思うので、前述のように各OSで2台用意できないときに、協力を依頼できると強いです。

 

また、家族間で異なるOS(iOS、Android)の端末を使用しているなら、さらに調達の幅が広がるため、有効です。

 

③中古スマホ・中古タブレットを買う

古い端末や家族の端末でも確保しきれない場合は、中古スマートフォン・タブレットのオンラインショップを利用しましょう。

 

新品を購入するよりも、はるかに安い金額で、手軽に調達できます。

 

クラウド上にある実機端末を使い、リモートで検証できるサービスや、デバッグを外部委託する方法もありますが、いずれも法人向けを想定したサービスで、費用が高額のため(リモート検証サービスの場合は、月額数万円ほど)、個人開発には不向きです。

 

それに比べ、中古端末は、買い切りのため、一度購入すればその後は費用の発生はなく、自分の専用機となるので、利用の幅も広がります

 

私自身も、検証用のiPhone実機を中古で購入しました。

 

購入する端末スペックの目安ですが、調達コストをできる限り抑えるのであれば

 

最新OSにアップデート可能な範囲で、

 

最も古い型、もしくは、

 

次世代バージョンのサポート切れの可能性を考慮して、最も古い型から1バージョン新しい型

 

のものを選ぶと良いと思います。

 

前述のとおり、最新OSバージョンで検証することが重要なためです。

 

なお、キャリアの通信状態が影響するアプリでない限り、基本、検証端末にSIM契約は不要なので、端末のみの購入で問題ありません。

 

また、iOSの場合、既にiPhone実機をお持ちの場合は、もう1台をiPadにするのもアリです。

 

前述のとおり、iPadは、iPhone用アプリの検証にも利用でき、かつ、iPhoneよりも安く調達できるためです。

 

どの機種なら、最新OSに対応しているか?

iOSの機種別の最新OSバージョンへの対応状況は、以下のとおりです。

 

2023年1月現在
  • iPhone
    • 現最新OS(iOS16.2)対応: iPhone 8以降、iPhone SE第2世代)以降
  • iPad
    • 現最新OS(iOS16.2)対応: iPad Pro(全モデル)、iPad Air第3世代)以降、iPad(第5世代)以降、iPad mini第5世代)以降

出典:Apple公式サイト(iPhoneiPad

 

iPhone8以降を調達すれば、現最新OSに対応しているので問題ありませんが、より安全に考えるなら、今後のサポート切れも想定し、最も古い型から1バージョン新しいiPhone X以降を調達するのが望ましいです。

 

また、Androidの機種別(Google Pixelの例)の最新OSバージョンへの対応状況は、以下のとおりです(2023年1月現在)。

 

Google Pixelの場合、OSのバージョンアップ対応期限を示す形で公表されています。

 

画像出典:Google公式サイト

 

これによると、現最新OS(Android13)への対応であれば、Google Pixel 4以降で問題ありませんが、2023年に想定される次期OS(Android14)へのバージョンアップも見据えるなら、Google Pixel 5a以降にするのが安全です。

 

おすすめの中古スマホ販売店・オンラインショップ

中古スマホ・中古タブレットを調達する際のおすすめのオンラインショップをご紹介します。

 

①にこスマ

画像出典:https://www.nicosuma.com/

 

「にこスマ」([PR]公式サイト)は、大手総合商社の伊藤忠商事の子会社(株式会社Belong)が運営するオンラインショップのため、購入先として安心です。

 

全ての商品について、専門スタッフによる検品が行われており、中古品としての品質が高い点が特長になっています。

 

初期不良品だった場合、発送日から1年間は無料で返品交換対応が受けられるほか、発送後30日以内であれば返金対応も可能になっており、安心して購入できる保証内容になっています(2022年8月現在)。

 

※但し、Jグレード(条件に当てはまらない大きな傷がある場合や、カメラや画面に一部破損があるが通常使用は問題ない商品)は、保証の対象外になっています。

 

※その他、不適切な扱いをした場合や、水没、改造をした場合など、保証対象外となる一般的な条件はありますので、ご留意ください。

 

下記のように、端末の保存状態に応じて、グレードが、

 

  • Aグレード(超美品)
  • Bグレード(美品)
  • Cグレード(良品)

 

に分かれており、保存状態を気にしなければ、リーズナブルな価格で入手可能です。

 

画像出典:https://support.nicosuma.com/ja/knowledge/grading-definition

 

にこスマで実際に購入した例

自分は、実際に「にこスマ」で、iOSの検証端末用にiPhoneを購入しました。

 

購入したのは、CグレードのiPhone8(価格は20,000円)でしたが、届いて開封したところ、驚くほどキレイで、傷ひとつない良品でした。

 

丁寧に梱包されており、端末にも目立った傷・汚れは見あたりませんでした。

 

動作面も全く問題なく最新のiOSバージョンにもアップデート可能でした。

 

強いて言えば、電池の減りが早いのが難点ですが、この辺は中古スマホであれば致し方ないかな、、と思います。

 

Cグレードでこの品質の高さだったので、あくまで実機検証の目的であれば、Cグレードでも十分だと感じました。

 

ちなみに、もう1バージョン新しいiPhone Xは、2023年1月時点で、29,500円(Cグレード)で販売されているので、iPhone8との価格差はそれほど大きくなく、1バージョン新しいことを踏まえると、こちらも十分検討の余地ありだと思いました。

 

 

②ゲオオンラインストア

画像出典:ゲオオンラインストア

 

「ゲオオンラインストア」は、全国に1,000店舗を以上展開しているゲオの公式通販サイトです。

 

ゲオは、ゲーム・中古スマホ・タブレット・テレビ・イヤホンなど、幅広い中古製品を長年に渡り販売してきた実績のあるショップであり、運営している株式会社ゲオホールディングスは上場企業なので、安心して購入できる点が魅力です。

 

下記のとおり、端末の保存状態に応じて、グレードが分かれています。

 

  • 状態A
    • 液晶に傷がなく使用されているが、良好な状態。動作や機能に全く問題がない。 微細な傷・汚れがあるもの。
  • 状態B
    • 液晶に薄い傷があり、使用回数が多い。外装の角などに傷・汚れ・塗装ハゲがあるが使用するのには問題ない状態。
  • 状態C
    • 液晶に傷があり、全体的に傷・汚れ・塗装ハゲはひどいが使用、動作に問題がないもの。ヒビ割れがあるものを含む。

出典:ゲオオンラインストア「よくある質問 中古商品のキズや汚れについて」

 

こちらの写真を見ると、「状態C」の場合は、かなり傷が多い印象なので、気になる方は「状態B」以上にした方が良いと思います。

 

端末バージョンの新しさや保存状態にこだわらなければ、iPhoneでも1万円以下で購入可能なので、とにかくコストを抑えて調達したい、という場合には、ありがたい入手先になります(2022年8月現在)。

 

 

③ダイワンテレコム

画像出典:https://www.dai-one.jp/

 

「ダイワンテレコム」は、バイヤーズ株式会社が運営する、スマートフォン専門で、販売・買取・修理サービスを展開しているオンラインショップです。

 

実店舗もあり、全国50店舗を展開しています。

 

ダイワンテレコムの特長は、動作不具合に対する保証期間がついている点です。

 

他社同様、端末の保存状態に応じて、S、A、B、Cのランクが分けがありますが、いずれのランクについても、購入後に商品に動作不具合が発生した場合は、購入日(出荷日)から3ヶ月以内であれば、同等品との交換(同等品在庫がない場合は代金全額返金)が受けられます(2022年8月現在)。

 

また、交換は注文につき1回まで、2回目の故障発生時は返金対応となっており、2回目以降の保証も用意されている点は安心です(2022年8月現在)。

 

※不適切な扱いをした場合や、水没、改造をした場合など、保証対象外となる一般的な条件はありますので、ご留意ください。

 

ちなみに、保証なしのJランクというのもありますが、しっかりした検証を行うには、Cランク以上を購入したほうが良いと思います。

 

 

どのショップで購入するのが良いか?

価格・品質のバランスから、1〜2機を購入する程度であれば、「にこスマ」([PR]公式サイト)がおすすめです。

 

「もっとたくさんの検証機を揃えたい!」という場合は、低価格の商品も多く揃っている「ゲオオンラインショップ」で購入するのも良いかと思います。

 

動作不良時の保証対応を重視するなら、「ダイワンテレコム」が安心です。

 

中古品の機種・グレードはどのレベルが良いか?

新しい機種で、かつグレードが高いに越したことはありませんが、目的は、あくまでアプリの「実機検証」なので、多少の傷や汚れは許容し、

 

  • 最新OSにアップデート可能な機種のうち、
  • 最も古い型、もしくは最も古い型から1バージョン新しい型(次世代バージョンのサポート切れの可能性を考慮)で、
  • 動作に問題ない事が確認されている
  • 最低のグレード

 

を調達するのが、最もリーズナブルだと考えます。

 

例えば、「にこスマ」([PR]公式サイト)で購入した場合を例に挙げると、自分の場合、Cグレードの「iPhone8」で十分でした。

 

iPhone8は、2022年9月に行われたiOS16アップデートでも、きちんと対象端末になっていたので、現在も活躍しています!

 

2023年1月現在では、今後のサポート切れのリスクを踏まえ、iPhone Xにしておくのもアリだと思います(iPhone8との価格差は1万円未満のため ※2023年1月現在)。

 


以上、自分の経験を踏まえた、個人アプリ開発における、検証端末の必要性と、おすすめの調達方法のをご紹介しました。

 

ご参考になれば幸いです。

 

最後までお読みいただき、ありがとうございました。

 

 

個人アプリ開発で役立ったもの

おすすめの学習教材

超初心者向けでオススメな元Udemyの講座/

 

 \キャンペーン時を狙えば安価で網羅的な内容が学べる(日本語訳あり)/

 

\Gitの基礎について無料で学べる/

 

おすすめの学習書籍

実用的image_pickerに関してかなり助けられた/

 

Dartの基礎文法を素早くインプットできる/


Dart入門 - Dartの要点をつかむためのクイックツアー

コメント

  1. さぶとる より:

    xcodeを(というかiosすら)触ったことがない素人なのですが、
    ipadでiphoneの実機検証もできるとのことですが、
    最新のipad一台買えば、そのipad+色々なサイズのiphoneの実機検証も可能ということなのでしょうか?
    よければお教えください。

    • halzo appdevhalzo appdev より:

      さぶとる様
      コメントを頂き、ありがとうございます!
      結論としましては、iPadでの色々なサイズのiPhoneの実機検証は難しいかと思われます。。(もしかすると方法があるのかもしれませんが、現状、理解が及んでおりません。)
      調べてみたのですが、下記の記事などによりますと(かなり古いですが、、)、例えば、12インチのiPadでは、iPhone6のサイズ(375×667ピクセル)で表示され、12インチより小さいiPadでは、320×480ピクセル(iPhone5などに相当)で表示されるなど、iPad上でのiPhoneの表示サイズは、自動的に決定されるようです。
      https://stackoverflow.com/questions/52289326/ipad-compatibility-mode-uses-unsupported-small-iphone-size
      記事で記載させていただいたのは、iPadだけでもiPhoneを想定したiOSの挙動を検証できる(画面サイズは一定のものになりますが)、という意味合いでした。iPadはiPhoneより安く入手できますし、日常使いがAndroidの方でも、手軽にiOSの検証ができるという趣旨でした。分かりづらく申し訳ございません。

  2. さぶとる より:

    調べても全然見つからなかったので助かりました!
    ありがとうございました!

タイトルとURLをコピーしました