審査を3回通っても、アプリは起動しなかった — 直したファイルが、アプリに入っていなかった

審査は通るのに、起動しない

6月、節約記録アプリをクローズドテストに出していたときのことです。

Google の審査を通った新しい版をスマホに入れると、「読み込み中…」のまま止まって、先に進みません。 「はじめる」ボタンを押しても反応がない。

直して、審査に出して、通って、入れ直す。それでもまた止まる。これを繰り返しました。

版 スマホで確かめた日 起動すると
1.0.3 6月9日 読み込み中のまま止まる
1.0.4 6月10日 止まる
1.0.5 6月11日 止まる
1.0.6 6月12日 やっと起動した

実はその前の 1.0.1 と 1.0.2 でも、審査は通ったのにアプリが起動しない、ということが起きていました。審査を通ったのに起動しない版が、5つ続いたことになります。

AIは毎回、原因を特定してくれたが……

止まるたびに、AIに相談しました。そしてAIは毎回、原因を見つけてくれました。

最初に疑ったのは、広告の設定でした。広告の仕組みを組み込むときに必要な設定が足りないと、アプリが起動しなくなることがあるからです。

次は、画面の準備ができたことを知らせる合図の受け取り方。そして、プログラムの書き間違いが2か所。どれも本物の間違いで、AIの説明には筋が通っていました。

直す。審査を通す。入れ直す。止まる。

直したはずの間違いが、なぜか直っていない。

私は6月9日に、気づきかけていた

いま記録を読み返すと、6月9日の私は、こう質問していました。

index.html の差し替えは、1つだけで大丈夫ですか? フォルダの中に5つあります。

index.html は、アプリの画面そのものが書かれたファイルです。それが5つもある。どれを直せばいいのか、不安になったのです。

AIの答えは、はっきりしていました。

「1つだけで大丈夫です。このプロジェクトは www というフォルダを使わない構成です」

私は安心して、言われたとおりに1つだけ直しました。

流れを変えたのは、「前は動いていた」という一言

6月11日、3回目も止まったとき、私はこう書き添えました。

Google Play 用のアプリにする前、Netlify で配っていた版は、問題なく起動して使えていました。

ここでAIの見立てが変わりました。「前は動いていた」なら、コードの問題ではなく、アプリを組み立てる手順の問題かもしれない。

調べてみると、答えは組み立ての記録にそのまま出ていました。

Copying web assets from www to android\app\src\main\assets\public

アプリに入るのは、www フォルダの中の index.html でした。

原因:直したファイルが、アプリに入っていなかった

私が3日間直し続けていたのは、www の外にある、別の index.html でした。

アプリに組み込まれるのは www の中のほう。そこには古いファイルがそのまま残っていました。 だから、何を直しても、何度審査を通っても、スマホに届くのは同じ古い画面だったのです。

対処は、たった2行でした。

copy index.html www\index.html
npx cap sync android

直したファイルを www の中に写し、アプリの中身を入れ替える。こうして作った 1.0.6 は、審査を通ったあと、ちゃんと起動しました。

AIが見つけた間違いは、どれも本物でした。直し方も正しかった。ただ、その直しが、アプリまで届いていなかったのです。

あとで記録を読み返して、気づいたことがあります。6月7日、最初に相談したとき、AIが挙げた原因の候補の中に、「npx cap sync を実行し忘れた」がすでに入っていました。 直したファイルをアプリの中に写す手順です。

答えは、初日に候補として出ていたのです。 それが6月9日の「1つだけで大丈夫です」のときに、「この手順は要りません」という説明とともに、候補から外れていました。

いまの決まりごと

この一件のあと、私たちの作業メモの一番目立つところには、こう書いてあります。

「編集するのは www の中の index.html。外にある index.html は古い」

3か月後、ゴルフのアプリを直していたとき、同じように画面ファイルが2つある場面にまた出会いました。今度は、直す前に2つを見比べて、どちらがアプリに入るのかを確かめてから手をつけました。同じ失敗は、二度目には防げました。

同じ作りのアプリを持っている方へ

画面を HTML で作って、それをアプリにしている方へ。私の失敗から言えることは3つです。

  • 審査を通ったことは、直ったことの証明にはなりません。 審査が見ているのは、あなたが直したかどうかではありません
  • 「前は動いていた」は、いちばん強い手がかりです。 前と今で何が違うかを考えると、コードではなく手順に原因が見つかることがあります
  • 同じ名前のファイルが複数あったら、どれがアプリに入るのかを先に確かめてください

そしてもう1つ。「本当にこれでいいのかな」と思ったときの違和感は、たいてい当たっています。 AIがはっきり答えてくれても、その違和感を確かめるほうが、結局は近道でした。

この記事のアプリ:節約記録アプリ(紹介ページ)

コメント

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