Android

Android AppWidget(ウィジェット)

AppWidget(ウィジェット)についてメモ。

ウィジェットを配置後、クリックして設定画面を表示し、内容を変更したい。

ある本のサンプルプログラムを参考に作成したところ、次の事象となった。
 1個配置 → 正常に変更できたので問題なし
 2個以上配置 → 全て最後に配置した内容が変更されてしまった

ウィジェット上のボタンにPendingIntentを設定する箇所。
---
Intent intent=new Intent();
intent.setAction(CLICK_CONF);
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetID);
PendingIntent pending
 =PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
views.setOnClickPendingIntent(R.id.appwidget_btn, pending);
---

呼び先のActivityではputExtraで設定したEXTRA_APPWIDGET_IDの値が全て最後に配置したappWidgetIDが取得された。
ボタンに登録したPendingIntentがすべて最後に配置したものになっているのか???
なぜだろう???

理由は調べきれていないが、次のことをしたら問題が解消した。
getActivityの第二引数を一律0から、異なる値(今回はappWidgetIDを使用)にした。
---
PendingIntent pending
 =PendingIntent.getActivity(context, appWidgetID, intent, PendingIntent.FLAG_UPDATE_CURRENT);
                        ★              
---

とりあえずメモを残しておく。

|

Android LiveCD

Android-x86のLiveCDを提供しているサイトのメモです。

ISOイメージ、USBイメージなど。

Android-x86 - Porting Android to x86

live-android

livedroid

|

Android DroidDraw

Androidの画面作成が簡単にできます。

ドラッグ&ドロップでAndroidウィジェットを配置できて、さらにレイアウトソースを生成してくれます。

DroidDraw

|

Android SDカード

●課題●

VirtualBox3.1.2でAndroid-x86をインストールした。

PCにSDカードを差した状態でAndroidを起動したがSDカードを認識してくれない。

VirtualBoxの「VBoxGuestAdditions」をAndroidにインストールできないのが原因らしい。

どうしたらVirtualBox上のAndroidでSDカードを使用することができるか?


★対策★

別のパーティション(例:/dev/sda2)をSDカードとしてマウントする。

1. VirtualBoxの仮想ハードディスクに2つのパーティションを作成する。
(例)
/dev/sda1  ext3でフォーマット
/dev/sda2  ext3でフォーマット(fatもOKかも?)

2. Android-x86を/dev/sda1にインストールする。

3. Android起動時、kernel行の末尾に「SDCARD=/dev/sda2」を追加する。
※grub/menu.lstを編集しておくとよい。

4. Android起動後、「設定」→ 「SDカード&端末容量」を選択し、SDカードが認識されていればOK。

補足:
・マウント先を別の仮想ハードディスク(例:/dev/sdb1)とすることができるかは試していない。

以上です。

|

Android開発環境構築メモ(Windows版)

Android開発環境構築メモ(Windows版)

●参考サイト
Android Developers
Java SE Downloads - Sun Developer Network (SDN)
Eclipse Downloads
Eclipse 日本語化言語
逆引きAndroid入門

0.はじめに
Android開発環境として「D:\Android_SDK」を作成する。
※どこでもよいが今回は「D:\」とした。

逆引きAndroid入門開発環境を構築するにはを一部参考にさせていただきました。


1.Android SDKのインストール
Android Developers」ページを表示する。

中央の「Android SDK をダウンロード ≫」をクリックする。

Windows用Package(android-sdk_r04-windows.zip)をクリックし、ダウンロードする。

ダウンロードしたファイルを「D:\Android_SDK」フォルダに解凍する。
「D:\Android_SDK\android-sdk-windows」ができればインストールOK。

インストールしたSDKフォルダ下のtoolsフォルダにパスを通す。
※Windows Vistaの場合
「コンピュータ」を右クリック→「プロパティ」をクリック→「システムの詳細設定」をクリック→「詳細設定」タブの「環境変数」ボタンをクリック。
下段のシステム環境変数「Path」を選択した状態で「編集」ボタンをクリック。
「変数値」にインストールしたSDKフォルダ下のtoolsフォルダを追加する。
(例)「;D:\Android_SDK\android-sdk-windows\tools」
(注意)元々設定されているパスを完全に上書きしないように!


2.Javaのインストール
Java SE Downloads」ページを表示する。

「Java Platform, Standard Edition」からJDK(jdk-6u18-windows-i586.exe
)をダウンロードする。
※JREだけでは十分ではないそうです。

ダウンロードしたファイルをダブルクリックしJavaをインストールする。


3.Eclipseのインストール
Eclipse Downloads」ページを表示する。

「Eclipse IDE for Java Developers」の右側に表示されているWindowsをクリックし、ダウンロードする。

ダウンロードしたファイルを「D:\Android_SDK」フォルダに解凍する。
「D:\Android_SDK\eclipse」ができればインストールOK。

インストールしたEclipseフォルダ直下のEclipsを起動できればOK。
「Workspace Launcher」画面が表示されたら「D:\Android_SDK\Workspace」を選択する。


4.Eclipseの日本語化
Eclipse日本語化」ページを表示する。

「Eclipse IDE for Java Developers」の「NLpackja-eclipse-java-galileo-SR1-blancofw.zip」をクリックし、ダウンロードする。

ダウンロードしたファイルを「D:\Android_SDK」フォルダに解凍する。
「D:\Android_SDK\eclips」が上書きされる。
Eclipsを起動し、日本語が表示されればOK。


5.ADP Plugin for Eclipseのインストール
Eclipsを起動する。

「ヘルプ」→「新規ソフトウェアのインストール」をクリックする。
「Add」ボタンをクリックし、
「Name」に「Android Plugin」など任意の名前、
「Location:」に「https://dl-ssl.google.com/android/eclipse/」を入力し、
「OK」ボタンをクリックします。
※httpsが上手く動作しない環境ではhttpsの代わりにhttpを使用。

リスト内「Developer Tools」が表示されたら、同チェックボックスをチェックし、「Next」ボタンをクリックする。
ライセンスの画面で「使用条件の条項に同意します」をチェックし、「完了」をクリックする。
ダウンロードと設定が行われる。少し時間がかかる。
終了すると再起動する。

再起動後、「ウインドウ」→「設定」をクリックする。

左ツリーの「Android」をクリックする。
はじめての設定のときには警告画面が表示されるので「OK」をクリックする。

「SDK Location」に「Android_SDK」へのパス名「D:\Android_SDK\android-sdk-windows」を入力し、「適用」をクリックする。


6.Javaの設定
Eclipsを起動し、「ウィンドウ」→「設定」をクリックする。
左ツリーの「Java」→「インストール済みのJRE」をクリックする。
「jre6」がチェックされていることを確認。
「追加」をクリックし、「標準VM」を選択し次へ。
JREホームにJavaJDKのパス(C:\Program Files\Java\jdk1.6.0_18)を入力し、完了をクリックする。
元の画面で追加した「jdk1.6.0_18」をチェックし、OKをクリックする。


7.AVDの作成
Eclipsを起動し、「ウィンドウ」→「Android SDK and AVD Manager」をクリックする。

左ツリーの「Installed Packages」をクリックし、「SDK Platform Android ~」があればOK。
ない場合は「Availabel Packages」をクリックし、インストールするPlatformの項目をチェックし(今回は「SDK Platform Android 2.1,API 7,revision 1」をチェック、Google APIsは同時にインストールされるのでチェックしなくてもよい)、「Install Selected」をクリックする。あとは画面に従えばOK。

左ツリーの「Virtual Devices」をクリックし、「New」をクリックする。
「Name」に任意の名前(例えば、「Android2.1_HVGA」)を入力、
「Target」で「Android 2.1 - API Level 7」を選択、
(必要であれば)「SD Card」に任意の値(例えば、「64M」)を入力、
「Skin」で「Default (HVGA)」を選択し、
「Create AVD」ボタンをクリックします。

「Android SDK」画面で作成したAVDを選択状態にし「Start」をクリックすると、エミュレーターが起動する。
※起動にしばらく時間がかかる。


以上です。

はじめてのAndroidプログラミング (I・O BOOKS) 初めてのAndroid Google Androidプログラミング入門

クリックで救える命がある。

|