2011年4月28日木曜日

Project has no default.properties file! Edit the project properties to set one.

他人が作成したアンドロイドプロジェクトを自分のEclipseにimportすると次のエラーメッセージが出る。
Project has no default.properties file! Edit the project properties to set one.
インターネットでは、「他のプロジェクトに存在するdefault.propertiesファイルを、importしたプロジェクトにコピーして組み込め」という趣旨の解決方法が提案されている。
default.propertiesが無いという趣旨のエラーメッセージであるから、この解決方法で問題は無い。
私なりの解決方法の提案は次のとおりである。
  1. 「import」しようとするプロジェクトのAPI levelを、まず最初に決める。ここではAPI levelを8とする。
  2. このAPI levelに対応するサンプルフォルダーを、Android SDKのフォルダーの中から特定する。私の環境では、「C:\Users\XXX\Documents\Android\android-sdk-windows\samples\android-8」である。
  3. このフォルダーに「import」しようとするプロジェクトのフォルダーとファイルをコピーする。後述するように、実際にはimportはしない。
  4. Eclipseでプロジェクトを生成する。手順は次のとおりである。File>New>Project>Android Project>Next>'Create project from existing sample'をチェック>Build TargetでAndroid 2.2(API level 8)をチェック>'Samples:'で目的のプロジェクトを選択する>Finish
次の警告が出る。
WARNING: Application does not specify an API level requirement!

これの解決方法は既に「警告:API level」で書いたとおりである。


【開発環境】
OS:Windows Vista
Eclipse IDE for Java Developers Helios Service Release 2
Pleiades:1.3.3.20110326

2011年4月22日金曜日

Android 1.5 (API Level 3)以下と、これを超えた版

API levelを8にして新規プロジェクトを作成し、その後、そのプロジェクトのAPI levelを3に引き下げた場合、そのプログラムは正常に稼働しない。
API level 8で作成した際に、リソースのフォルダーが次のように3個作成されてしまうからだ。
  • /res/drawable-hdpi
  • /res/drawable-ldpi
  • /res/drawable-mdpi
API level 3では、これらのフォルダーを取り扱えない。
これらの3個のフォルダーを、1個にまとめて/res/drawableという名前に変更すれば正常に稼働する。
つまり、プロジェクトの作成においては、下位互換性は保障されないということだ。一旦、新しいAPI levelで作り始めると、古いのに戻るには苦労をするということですな。

これに関して、次のサイトに情報が掲載されていました。
Providing Resources
Providing screen resource compatibility for Android 1.5

2011年4月20日水曜日

Can't dispatch DDM chunk

Can't dispatch DDM chunk

Consoleで次のメッセージが出る場合があります。
ActivityManager: Can't dispatch DDM chunk 46454154: no handler defined
ActivityManager: Can't dispatch DDM chunk 4d505251: no handler defined
このメッセージが出るのは、Project Build Target(プロジェクト>プロパティー>Android)及びVirtual devises(ウィンドウ>Android SDK及び...)の両方のAPI levelを3にした場合です。
少なくとも、Virtual devisesのAPI levelを4に上げた場合には発生しません。
Project Build TargetのAPI levelを上げてもよろしいです。

【開発環境】
OS:Windows Vista
Eclipse IDE for Java Developers Helios Service Release 2
Pleiades:1.3.3.20110326