開発初心者がよくやる失敗シリーズ、今回はコーディング編です。
初心者がAndroidアプリを開発していて、コーディング中によくやるミスとして以下の2点について解説します。
- R.javaが消えた
- ActivityをManifestに登録していなくてアプリがクラッシュする
R.javaが消えた
R.javaは、XMLで宣言したリソースのIDを管理しているJavaファイルです。
自動で生成されるため、開発者は触れない方がいいです。
アプリを開発していて、よく起こる現象のひとつ、R.javaの喪失。
これは、xmlファイルにエラーがあることが原因で、R.javaの自動更新ができずに起こってしまう現象です。
消えてしまったR.javaを復元させるためには、方法が2つあります。
- xmlファイルのエラーを取り除いた上で、上書き保存をする。
- xmlファイルのエラーを取り除いた上で、プロジェクトのクリーンをする。
注意する点は、Manifest.xml以外のxmlファイルのエラーを取り除かなければ復元できないということです。
ちなみにManifest.xmlにミスがあった場合は、エラーにはなりませんが、アプリを実行した際にクラッシュ、もしくはアプリが立ち上がりません。
実は、xmlファイルのエラーを修正し、上書き保存をしても、R.javaが生成されないことが稀にあります。
その時は、プロジェクトのクリーンをしましょう。
プロジェクトのクリーン方法
メニューバーの「プロジェクト」→「クリーン」で、クリーンしたいプロジェクトを選択する画面を表示します。
クリーンしたいプロジェクトを選択し、OKを押します。
プロジェクトがクリーンされ、ファイルにエラーが無ければ、R.javaが生成されます。
ActivityをManifestに登録していなくてアプリがクラッシュする
Androidでは、1つの画面を1つのActivityで管理しています。
アプリを開発する上で作成した各Activityは、全てManifest.xmlに登録しなければなりません。
Manifest.xmlに登録していない場合、アプリを実行したら、たとえソースコードにエラーが無かったとしても、アプリがクラッシュします。
Activityを追加作成したら、まずはManifest.xmlに追加登録を忘れずに行いましょう。
ActivityのManifest.xmlへの追加登録は、次の1文を追加します。
Manifest.xml
<activity android:name=".Activity名"/>
Activity名は、追加登録したいActivityの名前を入力しましょう。
追加登録したいActivity名の頭に、「.(ドット)」を付加しましょう! |
(例)
<activity android:name=".SecondActivity"/>
この「.(ドット)」をよく忘れるんです。忘れずに付けてあげましょう!
以上、開発初心者がよくやる失敗【コーディング編】でした。