一週間で初めてのAndroidアプリの開発を試してみました。(003SH GALAPAGOS)



もとまか日記さんの一週間で初めてのAndroidアプリを作ってみましたのエントリーを元に
道筋をたどってみました。途中で、codezineに掲載されていたGoogle Mapの虜になりいろいろ試してみました。
 

本エントリーで実施したこと

一週間で初めてのAndroidアプリを作ってみましたさんの記事を元に軌跡を追ってみました。

  1. itproの記事を試してみた(チュートリアル
  2. codezineの記事を試してみた
  3. ここまでで習得、調べたこと
  4. AndroidSQLiteを利用する
  5. ListViewをカスタマイズする
  6. Google Mapを利用する

 

開発環境

一般的な開発環境です。

  1. Eclipse3.6.1
  2. 003SH GALAPAGOS(実機テスト用)

 

中の人のスキル

  • 最近、jdk6までの文法をキャッチアップしていた。
  • モバイルデバイスの開発は、未経験。
  • その昔、AWT・Swingでの開発経験はある。
  • Swingの「Observer パターン」は、なんとなく理解している。

 

itproの記事を試してみた(チュートリアル

とりあえず、一通り記事の内容を試して、動作するものを作成しました。
 
 第4回 簡単なRSSリーダーを作ってみる - Androidで広がる,携帯アプリ開発の世界:ITpro
 第5回 RSSリーダーの要、パース機能を知る
 第6回 詳細画面を付けて、簡易RSSリーダーの完成
 

とりあえず、どうやったら動くか、どういうファイル構成か慣れる為にいろいろ
試してみました。2010年5月頃に一度、試したことはあるのですが当時は全く分からずのことをすっかり忘れていました。
とりあえず、そのまま「moto_maka」さんの記事どおりに進めようと思いました。
 

itproの記事を試してみた

とりあえず、記事に沿っていろいろ試してみました。
レイアウトの作成手順をマスターする!〜速習! Androidアプリケーション開発(3)〜
 


 

ここまでで習得、調べたこと

とりあえず、ここまででつまづいていろいろ調べたことをまとめてみたいとおもいます。
 

003SHをUSBで繋ぐには専用のドライバが必要(っぽい?)

 
 SH Developers SquareからUSBドライバとvirtual deviceをダウンロードし、設定した。
 SHARP共通 ADB USBドライバ
 usb_driver_SHARP_r2.zipをダウンロードし、インストールしました。
 また、「SHARP SDK AddOn」をダウンロードし、インストールしました。
 sharp_addon-JNDK01_r1.zip
 sharp_addon_2_for_API8.zip
 

 android list target
 
 id: 5 or "SHARP Corporation:JN-DK01:4"
 Name: JN-DK01
 Type: Add-On
 Vendor: SHARP Corporation
 Revision: 1
 Description: SHARP JN-DK01 Add-on
 Based on Android 1.6 (API level 4)
 Libraries:
  * jp.co.sharp.android.hardware (hardware.jar)
  * jp.co.sharp.android.io.obex (obex.jar)
  
 Skins: WVGA854, HVGA, WVGA800, QVGA, JNDK01 (default)
 Adds USB support for devices (Vendor: 0x04DD)
 
 id: 10 or "SHARP Corporation:sharp_addon:8"
 Name: sharp_addon
 Type: Add-On
 Vendor: SHARP Corporation
 Revision: 2
 Description: SHARP Add-on
 Based on Android 2.2 (API level 8)
 Libraries:
 * jp.co.sharp.android.hardware (hardware.jar)

      * jp.co.sharp.android.io.obex (obex.jar)

      * jp.co.sharp.android.stereo3dlcd (stereo3dlcd.jar)

     Skins: WVGA854, WQVGA400, HVGA, WQVGA432, WVGA800 (default), QVGA
     Adds USB support for devices (Vendor: 0x04DD)

ついでに「AVD」をコマンドラインで作成をしました。

以下例では、AVD名:SHARP2_8、SDカード容量:128MB、Target ID: 10を指定してAVDを作成しております。

 $ android create avd -n SHARP2_8 -t 10 --sdcard 128M

 $ android list avds
 
 ---------
 Name: SHARP2_8
 Path: C:\Documents and Settings\xxx\.android\avd\SHARP2_8.avd
 Target: sharp_addon (SHARP Corporation)
     Based on Android 2.2 (API level 8)
  Skin: WVGA800
 Sdcard: 128M

前ステップで作成したAVD “SHARP2_8”を指定して、エミュレータを起動します。

 $ emulator @SHARP2_8

実機でAndroidアプリを動かす方法に関しては、下記のページを参考にしました。

実機(xperia)で開発中のアプリを動かす
 

AndroidSQLiteを利用する

codezineの次の記事を元に、いろいろ試してみました。

Androidアプリでのデータベース基礎〜速習! Androidアプリケーション開発(4)〜

はまったこと。記事の「adb.exe実行時の表示例」を元にdatabases配下のsqliteファイルを参照
しようとするが、パーミッションエラーがでてしまう。

 $ adb shell
 
 $ cd data
 cd data
 $ ls
 ls
 opendir failed, Permission denied

いろいろ調べてみると接続するdeviceを選択できるらしい

$ adb devices
List of devices attached
353019xxxxxxx   device
emulator-5554   device

$ adb -s emulator-5554 shell
# cd data
cd data
# ls
ls
misc
local
app-private
anr
backup
property
data
dontpanic
dalvik-cache
app
system
lost+found

無事rootになりdeviceの中にアクセスすることができた。
確認の仕方が分かるとEclipseでファイルエクスプローラーを利用し確認することもできた。

 

ListViewをカスタマイズする

Techfirmさんの記事を参考にカスタマイズしてみました。
ListViewをカスタマイズする

 

Google Mapを利用する

Androidアプリ 実践テクニック」さんの「マルチスレッドでグーグルマップ」を参考に
GoogleMapを利用してみました。

マルチスレッドでグーグルマップ

実際は、ここで3日間ぐらいはまってしまい半分くらいのパワーを消費してしまいました。
 
とりあえず、1週間でこんなことができました。
GoogleMapに関しては、もう少し詳しく掘り下げていきたいと思います。