約 3,721,352 件
https://w.atwiki.jp/conn/pages/18.html
Androidプロジェクト Androidプロジェクトの中身を簡単にまとめます。 ネタ元はAndroid SDKのドキュメントと、EclipseのAndroid SDK Pluginで自動生成された雛形の動作検証です。 プロジェクトのディレクトリ構成 Androidアプリを作るなら、ごく当たり前の知識として知っておく必要があります。 プロジェクトルート src ソースコード用ディレクトリ gen ADTが自動生成したファイル用ディレクトリ。R.javaやAIDLファイルから生成されたファイルが該当。 assets 生のデータファイルを保存する。ビルド時にapkファイルへ組み入れられ、ファイルシステムと変わりない方法でアクセスできる。 bin ビルドされたファイル用ディレクトリres ビルドされたリソースファイル用ディレクトリ libs ライブラリファイル用ディレクトリ res リソースファイル用ディレクトリdrawable-**** 画像ファイルや、レイヤー定義などを記載した描画用定義XMLファイルを保存する。画面解像度ごとにディレクトリが分かれているモヨウ。 layout レイアウト定義XMLファイル用ディレクトリ menu メニュー定義XMLファイル用ディレクトリ values 文字列や設定情報等用のディレクトリ。resディレクトリ内の他のXMLファイルはファイル名ベースでアクセスするのに対し、XML要素を解析し、それぞれの要素名をR.javaファイルに展開しアクセスする点に違いがある。 raw 生のデータファイルを保存する。assetsディレクトリとの違いはアクセス方法で、こちらはR.javaファイルを通じてリソースファイルとしてアクセスする。 AndroidManufest.xml アプリの基本情報を定義する。アプリバージョン、製作者、対応・必要APIバージョン、必要な外部ライブラリなどなど、様々な情報を定義する。奥が深い。 リソースファイル用ディレクトリと、マニフェストファイルは、特に勉強が必要。 詳細が知りたければSDK Managerでドキュメントをインストールし読んでみると良い、全部英語だけども。 雛形プロジェクトの動作 ADTでプロジェクトを作成すると、HelloWorldが表示される簡単なアプリが出来上がった状態になっている。 その動作の細かな点をつついて、それぞれのディレクトリに格納されたファイルが どのように連携するかを調べてみた。 AndroidManifest.xmlを解析しアプリを起動、アクティビティの定義を読み込む。 XMLファイル中では「@」を用いることでリソースにアクセスすることができ、アプリケーション名やスタイル定義の指定に使用されている。 application android icon="@drawable/ic_launcher" <<<res/drawable-****/ic_launcher.pngファイルを参照 android label="@string/app_name" <<<res/valus/strings.xml内の文字列を参照 android theme="@style/AppTheme" <<<res/valus/style.xml内の定義を参照 activity android name=".MainActivity" <<<ここで起動するアクティビティを指定 android label="@string/title_activity_main" <<<res/valus/strings.xml内の文字列を参照 intent-filter action android name="android.intent.action.MAIN" / category android name="android.intent.category.LAUNCHER" / /intent-filter /activity /application binディレクトリ内のデフォルトアクティビティを起動する。 public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); <<<レイアウト定義ファイルを指定 } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.activity_main, menu); <<<メニュー定義ファイルを指定 return true; } } レイアウト定義ファイル res/layout/activity_main.xml メニュー定義ファイル res/menu/activity_main.xml Activityの動作に従い読み込まれる。 それぞれの定義ファイルにはリソースへのアクセスが指定されている。 TextView android layout_width="wrap_content" android layout_height="wrap_content" android layout_centerHorizontal="true" android layout_centerVertical="true" android text="@string/hello_world" tools context=".MainActivity" / menu xmlns android="http //schemas.android.com/apk/res/android" item android id="@+id/menu_settings" android title="@string/menu_settings" android orderInCategory="100" android showAsAction="never" / /menu 以上が簡単な動作解説です。 マニフェストファイルが起点となり、アクティビティが実際の動作を担っており、 動作時に様々な箇所でリソース内の定義ファイルが読み込まれているのが分かる。 Webアプリケーションなどに比べると非常に単純な構成となっているが、アプリが大きくなるとファイルが増え、管理が難しくなりがち。だがディレクトリ構成の原則に従いアプリを作成することで、誰にでも分かりやすい、無論のこと自分自身にも分かりやすい管理しやすい構成にできる。
https://w.atwiki.jp/negilab/pages/15.html
Androidとは? Android Androidとは、GoogleおよびT-Mobile、HTC、モトローラ、日本からは KDDIやドコモを含む世界34社はオープン携帯プラットフォームを目指す団体「Open Handset Alliance」が開発を進める オープンソースのモバイルプラットフォーム。プログラミング言語はJava言語、開発環境はEclipseを使う。 UIはXMLレイアウトファイルで記述できる。 Androidはメーラー、SMS、カレンダー、地図、ブラウザなどのコアアプリケーションを含んで出荷される。 従来の携帯電話ではネイティブで入れ替えできなかった部分も作成できる模様。 アプリケーション実行環境というよりOSに近い印象を受ける。 特徴は次の通り。 アプリケーションフレームワーク コンポーネントの再利用が可能 Dalvik Virtual Machine モバイル用に最適化 統合ブラウザ WebKitベース グラフィックス 3DグラフィックスはOpenGL ES 1.0ベース SQLite ローカルデータをデータベース形式で保存 メディアサポート MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF GSM通話(機種依存) Bluetooth、EDGE、3G、WiFi(機種依存) カメラ、GPS、コンパス、加速度計(機種依存) デモはtoolsのemulator.exeを実行し、メニュー画面の「Application→App Demo」で閲覧可能。
https://w.atwiki.jp/devandroidknowledge/pages/14.html
≪Android Tips≫ ◆なんと、Androidには温度センサーが付いているみたい! 【温度センサーから温度を取得するには(概要)】 Sensorインスタンスの生成 Sensorインスタンスに温度センサーを指定する SensorManagerインスタンスにリスナ―指定する。( 温度変化があったごとに記録するには、左記にプラスして下記が必要。) Andoridのセンサーには加速度センサーとか磁気センサーなどがある リスナーに設定すると、センサーの値が変更されたタイミングでonSensorhangedというメソッドが呼び出され、センサーの値を取得することが出来る。 SensorManagerインスタンス センサーを管理するためのSensor系のインスタンス。センサーを管理するためのメソッドも用意されている。 【温度センサーから温度を取得するには(詳細)】 getSystemServiceメソッドでSensorManagerインスタンスを取得 SensorManager.getDefaultSensorメソッドにSensor.TYPE_TEMPERATURE(温度センサー)を指定する。 SensorManager.registerListenerメソッドに②で生成したSensorインスタンスを指定。 by nakamura ◆GoogleMap活用法系 GoogleMap使用準備 GooglMapAPIのKeyを取得する。 AndroidManifestにインターネット接続のパーミッションとGooglMaoAPIを利用する記述を行う。 GoogleMap使用準備 さぁ、準備が出来たら画面に表示だ! 画面に表示させるにはあ以下のことを行う必要がある。 MapActibityクラスの継承 そのクラスの中でonCreateするときにsetContentView(R.layout.main)で地図をセットする。 ※main.xmlにMapViewを配置しておく。 ※MapView・・・Googleから取得したAPIキーの記述や、地図に関する表示をクリックの可否の記述を行う isRouteDisplayedメソッドをオーバーライドしてfalseを返すようにする ※isRouteDisplayedメソッド・・・?? ※MapViewインスタンスからマップ表示させることも可能 MapView mapView = new MapView(this,getResources().getString(取得したキー)); mapView.setEnabled(true); mapView.setClickable(true); setContentView(mapView); by nakamura ◆画面系いろいろ入門編 1画面につき1つActivityクラスが対応する。 バックグラウンドの処理はServiceクラスに実装する。 AvtivityからService,ServiceからServiceを呼び出す際はIntentを使う。 アプリ起動時の画面はAndroidManifest.xmlのintent-filterに設定する。 参考にしたページ Androidアプリ作成のための基礎知識 Androidプログラミング入門 Android入門
https://w.atwiki.jp/pcmemo/pages/25.html
Android Android SDKのインストーラにJDKが無いと言われる JDKが入っているのに 「Java SE Development Kit (JDK) not found.」 と言われる場合 64bit版WindowsだとJDKの使うレジストリの関係でインストーラがJDKを認識できないようです とりあえずzip版使えばOK 実機での実行/デバッグ 実機での実行 実機でもデバッグができるようにするEclipseならAndroid.xmlの「アプリケーション」タブからApplication Attributes内、debuggableをtrueに 直接編集する場合は、 application 要素に「android debuggable="true"」を追加 Eclipseでの実行実行やデバッグを押すとAndroid Device Chooserダイアログが出るので上側の実機デバイスを選択してOK AVDが自動で起動する場合、実行>実行(デバッグ)構成>Androidアプリケーション>(プロジェクト名)>ターゲット内のAVDのチェックを外して適用 ADBでの実機へのインストール・アンインストール 実機が繋がった状態でコマンドプロンプトから インストールadb install [.apkファイル] .apkはプロジェクトのbinフォルダにあるやつ アンインストールadb uninstall [パッケージ名] パッケージ名はcom.example~とかのやつ Android NDK ndk-build時に/cygdrive/g/David~が見つからないと言われる よくわからないけどWindowsのGドライブが関係しているようで、Daemon Toolsが作成していたGドライブを削除したら通るようになった。 参考URL https //groups.google.com/group/android-ndk/browse_thread/thread/7eb2ef515c1fca2?hl=ja
https://w.atwiki.jp/android/pages/21.html
Hello, Android! 第一印象は重要だ。それは、あなたが、このアンドロイドというフレームワークを手にして、"Hello, World!"を書いたときに受ける第一印象だ。そう、アンドロイドにおいて、それはとても簡単なのだ。下記を見て欲しい。 プロジェクトを作成する。 UIを構築する。 コードを走らせる Hello, Android 以下のセクションでそれをつまびらかに語っていこう。 UIをXMLのレイアウトにアップグレードする。 プロジェクトをデバッグする。 Eclipseなしでプロジェクトを作成する。 さあ行こう。 プロジェクトを作成する プロジェクトを作成することはできる限り簡単にしてある。Eclipseプラグインで、Androidの開発環境のスナップを作成することが可能だ。Eclipse 3.3以上(Europa)と、Eclipse用のAndroidプラグインは用意してあるかい?それらをインストールしてから次に進んで欲しい。 最初に、"Hello, World!"をビルドするための、簡単な要約を述べておこう。 File- New- Project menuから、"Android Project"を新しく作成する。 New Android Project ダイアログで、プロジェクトの詳細を埋める。 なにかを表示するための自動生成されたテンプレートコードを編集する。 さあ、行こう!以下でそれぞれのステップの詳細を説明しよう。 1.新しい"Android Project"を作成する。 Eclipseから、File- New- Projectと選択して欲しい。もし、EclipseのAndroidプラグインがきちんとインストールされているなら、表示されるダイアログの中に、"Android"と名前のついたフォルダがあり、その中には、"Android Project"があるはずだ。 "Android Project"を選択し、"Next"を押そう。 2.New Android Project ダイアログで、プロジェクトの詳細を埋める。 次の画面で、プロジェクトに関係する詳細を入力する。たとえば次の例のように: それぞれの入力欄が意味するところは次のようになる。 Project Name プロジェクトを保存したいディレクトリもしくはフォルダの名前 Package Name これはパッケージの名前空間だ。ちょうどJavaのように。あなたのソースコードは全てここより下位におかれるようにする。ここには、自動生成されたスタブのパッケージ名がすでにセットされているはずだ。パッケージ名は、システムにインストールされるすべてのパッケージ間で、ユニークである必要がる。というわけで、あなたのアプリケーションに標準的なドメイン命名スタイルを使うことはとても重要だ。上述の例では、パッケージ名として、ドメイン"com.google.android"を使用している。あなたの所属する組織にみあった、唯一の名前を使用するといいだろう。 Activity Name ここでは、プラグインによって生成されるスタブクラスの名前が書かれている。これは、AndroidのActivityクラスのサブクラスである。Activityは単純なクラスで、それ自体で実行させ、処理させることができる。希望するならUIも作れるが、そうしなくても構わない Application Name ここにはユーザーが目にするアプリケーションのタイトルを入力する。 "Use default location"チェックボックスをONにすることで、プロジェクトファイルの保存場所を変更することができる。 3.自動生成コードを編集する。 After the plugin runs, you ll have a class named HelloAndroid that looks like this プラグインを実行すると、下記のような、HelloAndroidクラスが出来上がっているがわかるだろう。 public class HelloAndroid extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.main); } } 次のステップで、これを修正していこう! UIを構築する。 プロジェクトをセットアップしたあとは、当然、それを修正していく。以下がその完成品だ。1行ずつ解剖していこう。 public class HelloAndroid extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); TextView tv = new TextView(this); tv.setText("Hello, Android"); setContentView(tv); } } このサンプルのコンパイルをするために、インポートセクションに、"import android.widget.TextView;"を追加するしなければらいことを注意しよう。 Androidでは、ユーザーインターフェースは、Viewsと呼ばれるクラス階層で成り立っている。Viewはシンプルな描画オブジェクトである。たとえば、ラジオボタンであるとか、アニメーションであるとか、(今回のケースは)テキストラベルなどだ。テキストを扱えるVieewのサブクラスの名前は、単に、TextViewとなる。 下記が、TextViewクラスを生成する方法だ。 TextView tv = new TextView(this); TextViewクラスのコンストラクタに渡している引数は、Android Contextのインスタンスである。Contextは単にシステムへ渡すハンドルである。そのハンドルは、リソースを解決したり、データベースや設定などにアクセスするために供給されている。ActivityクラスはContextから派生している。それゆえ、HelloAndroidクラスはActivityクラスのサブクラスであり、コンテキストであるのだ。だから、"this"参照をTextViewに渡すことができる。 一度TextViewを生成してしまえば、何を表示するのか伝えてあげる必要がある。 tv.setText("Hello, Android"); とくに特筆すべきことはないだろう。 ここまでで、TextViewを生成し、どんなテキストをディスプレイに表示すべきかを伝えた。最後のステップは、実際のディスプレイに、TextViewをつなぐことである。こんな感じに。 setContentView(tv); ActivityのsetContentViewメソッドは、ActivityのUIにどのViewが関連付けられるべきかをシステムに通知する。もし、Activityがこのメソッドをコールしないなら、UIは何も表示されないし、システムは真っ白けの画面を表示することだろう。今のところの目的は、何でもいいからテキストを表示することなので、作ったばかりのTextViewを渡してしまえばよい。 これで、アンドロイドでの"Hello, World"のコーディングは完了だ。もちろん、つぎは、実行させるてみよう。 コードの実行 Hello, Android Eclipseプラグインのおかげで、とても簡単にあなたのアプリケーションを実行することができる。メニューからRunを選択すると、下のようなダイアログが表示される。 次に、"Android Application"を選択しよう。そして、アイコンの左上をクリックしよう(+印とともに、画面に描画されているやつだ)。それとも、単に、"Android Application"をダブルクリックするだけでいい。"New_configuration"と名づけられた新しいランチャーダイアログが表示されるはずだ。 名前を何か適当なもの、たとえば、"Hello, Android"と変更して、"Browse"ボタンを押下して、あなたのプロジェクトを選択しよう。(もしあなたが2個以上のAndroidプロジェクトをEclipseで開いていたら、正しいものを選択しているかどうか確かめてほしい)プラグインは、自動的に、あなたのプロジェクトからActivityのサブクラスをスキャンして、"Activity "ラベルの下のドロップダウンリストに追加してくれる。デフォルトでは、あなたは、"Hello, Android"プロジェクトしか作っていないから、単に続けるだけでいい。 "Apply"ボタンを押下しよう。こういう風になる。 これで成功だ。"Run"ボタンを押してみよう。Androidエミュレータがスタートするはずだ。起動完了したら、あなたのアプリケーションが表示されるだろう。今までいったことが全部できていれば、次のような画面を目にすることができるはずだ。 これが、Androidにおける、"Hello, World"だ。とっても簡単だったろう?チュートリアルの次のセクションでは、Androidについて、より詳細な価値ある情報を知ることができるだろう。 UIをXMLレイアウトにアップグレードする。 さっき終わらせた。"Hello, World"サンプルは、いわゆる"programmatic"なUIレイアウトだ。このことは、UI記述をソースコードに直接書いてビルドしているってことだ。UIプログラミングがおわっても、変更にもろいやりかただってことはわかるだろう。たとえば、ちょっとしたUIのレイアウトの変更が、大きなソースコードの変更につながったりとか。Viewクラス同士のつながりは忘れやすいし、それがデバッグに時間を浪費することにつながる。 そんなわけで、Androidでは、もうひとつのUI構築のモデルを提供している。それが、XMLベースのレイアウトファイルだ。このコンセプトを説明するには一例をあげるのが一番だね。ここに、今終わらせたプログラミングベースのものと同じ振る舞いをするXMLレイアウトファイルを用意しよう。 ?xml version="1.0" encoding="utf-8"? TextView xmlns android="http //schemas.android.com/apk/res/android" android layout_width="fill_parent" android layout_height="fill_parent" android text="Hello, Android"/ たいていの、Andorid XMLレイアウトファイルの構成はシンプルだ。タグのツリーからなっており、それぞれのタグは、Viewクラスの名前になっている。この例で言えば、TextView一要素だけからなる シンプルなツリー構成だ。XMLレイアウトファイルには、タグ名として、Viewクラスを継承したものなら、自作のものでも何でも使える。これは、Webの構築モデルからインスパイアされたものなんだ。ちょうど、UIの表示とデータを処理するアプリケーションロジックを分離できるみたいに。 この例では、4つのXML属性がある。以下が、その意味の要約だ。 Attribute 意味 xmlns android XMLネームスペース定義だ。これは、Androidネームスペースで定義された、共通の属性を参照するということをAndroidツールに知らせている。 android layout_width この要素は、このViewが消費する画面幅がどれくらいなのかを定義する要素だ。この場合で言えば、"fill_parent"を使っているが、画面全体の幅を指定しているってことになる。 android layout_height android layout_widthto同じようなものだが、これは高さを意味する。 android text これは、TextViewの内容をセットするものだ。この例でいえば、いつもの"Hello, Android"だ。 そう。XMLレイアウトはざっとこんな感じだ。けど、どうやってそれを組み込むと思う? resディレクトリの下に入れればOKだ。"res"は"resources"をはしょったもので、そのディレクトリには、アプリケーションに必要なコード以外の一式を詰め込んでおけばいい。たとえば、イメージや、ローカライズされた文字列や、XMLレイアウトファイルだ。 Eclipseプラグインは、XMLファイルを作成してくれる。上の例では単にそれを使わなかっただけだ。Package Explorerで、resフォルダの内容を開いて、main.xmlファイルに編集して、上のテキストをコピーして、変更を保存しよう。 Package Explorerのソースコードフォルダから、R.javaファイルを開いてみよう。次のようなものが表示されるはずだ。 public final class R { public static final class attr { }; public static final class drawable { public static final int icon=0x7f020000; }; public static final class layout { public static final int main=0x7f030000; }; public static final class string { public static final int app_name=0x7f040000; }; }; プロジェクトのR.javaファイルに全てのリソースにインデックスが定義されている。このクラスをソースコードのなかで、プロジェクトで使用しているリソースへの参照の速記方法の一つとしてつかえばいい。これはEclipseのようなコードコンプリート機能を持つIDEでは特にパワフルだ。なぜなら、その機能のおかげで、すばやく、インタラクティブに探しているリソース参照を配置することができるからだ。 この例で注意すべきは、"layout"と命名されたインナークラスと、"main"と命名されたフィールドだ。新しいXMLレイアウトファイルを追加したら、エクリプスプラグインは通知し、R.javaファイルを再生成するだろう。つまり、他のリソースファイルをプロジェクトに追加するなら、R.javaファイルも更新されるのがわかるだろう。 最後に、あなたのHelloAndroidコードを、ハードコーディングされたバージョンからXMLのUIを使うように修正する必要がある。新しいクラスはこのようになるはずだ。見ればわかるように、ソースコードはよりシンプルになった。 public class HelloAndroid extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.main); } } この変更を加える際に、コピーアンドペーストをしないことだ。Rクラスに働くコードコンプリート機能を試してみよう。これがかなり使える機能だってことがわかるだろう。 変更を加えたら、アプリケーションを再起動してみよう。することと言えば、緑のRunと書かれた矢印アイコンをクリックし、Run - Run Last Launchedをメニューから選択するだけだ。すると、さっき見たのと同じものが表示されるはずだ!結局のところ、2つの違ったレイアウトのアプローチは同じ結果をもたらすわけだ。 XMLレイアウトの作成はもっと説明することがあるんだが、今ここで説明してもしょうがない。このアプローチのもっと詳細な情報のためには"Implementing a Uset Interface"ドキュメントを読んで欲しい。 プロジェクトのデバッグ EclipseのAndroidプラグインは、Eclipseデバッガにうまく統合されてもいる。それをデモするために、コードにバグを混入させてみよう。次のようにHelloAndroidのソースコードに変更を入れて欲しい。 public class HelloAndroid extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); Object o = null; o.toString(); setContentView(R.layout.main); } } これは単に、NullPointerExceptionを入れてみただけだ。もう一度アプリケーションを実行させると、すぐに次のような画面を見るだろう。 何がおかしかったのかを特定するために、ソースコードの"Object o = null;"と書かれた行にブレークを貼ってみよう。(ブレークポイントを貼るためには、Eclipseの行番号の左の領域をダブルクリックすればいい)それから、Run - Debug Last Launched を選択してデバッグモードに入ろう。エミュレータが再起動すると、セットしたブレークに到達した時点でアプリケーションは中断する。EclipseのDebug Perspectiveを通してどんなアプリケーションでもステップ実行ができる。 Eclipseなしでプロジェクトを作成する。 もし、あなたがEclipseを使用しないなら(たとえば別のIDEがいいだとか、そもそも単にテキストエディタとコマンドラインツールが使いたいなら)Eclipseプラグインはあなたの助けにはならないだろう。でも心配しなくていい。Eclipseを使用しないからといって、あなたは何も便利さを失わないのだ。 EclipseのAndroidプラグインは、Android SDKに同梱されているツール群のラッパーにすぎないからだ。(ツール群とは、エミュレータや、aapt,adb,ddmsなどだ。ほかにもどこかにドキュメントがあるだろう)それゆえ、他のツールを使って、それらをラッピングすることは可能だ。たとえば ant のビルドファイルを使うなどして。 Android SDKは、"activityCreator.py"とネーミングされたPythonスクリプトも含んでいる。それは、antと互換性のあるbuild.xmlファイルはもちろんプロジェクトに必要なソースコードとスタブディレクトリを全て作成してくれる。これは、コマンドラインでプロジェクトをビルドできることと、あなたの好きな他のIDEと統合できることを意味する。 たとえば、Eclipseを通してさっき作ったものと似たようなHelloAndroidプロジェクトを作成するためには、次のコマンドを使えばいい。 activityCreator.py --out HelloAndroid com.google.android.hello.HelloAndroid プロジェクトをビルドするためには、 ant コマンドを走らせればいい。コマンドが成功すれば、 bin フォルダの下にHelloAndroid.apkと名づけられたがファイルがあるはずだ。この.apkファイルは、Android Packageで、 adb ツールを使ってエミュレータにインストールして実行できる。 これらのツールについての使用方法をもっと知りたければ、上で紹介されたドキュメントを読んで欲しい。
https://w.atwiki.jp/android-reference/pages/21.html
android Contains the resource classes used by standard Android applications. Classes Manifest Manifest.permission Manifest.permission_group R R.anim R.array R.attr R.bool R.color R.dimen R.drawable R.id R.integer R.layout R.plurals R.raw R.string R.style R.styleable R.xml コメント 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/cloneofminecraft/pages/23.html
このページはWikiの管理者によって編集されたものではなく、編集者によって編集されたページです。ウイルス等のチェックを管理者がしたわけではありません。情報も古くなっていますのでご注意ください。 プレイする前に Minecraft 無料ゲーム3Dブロックグラフィックス ジャンルわけがまだのもの 2Dグラフィックスジャンル分けがまだのもの 有料ゲーム3Dブロックグラフィックス 2Dグラフィックスその他 ジャンル分けがまだのもの プレイする前に プレイする前にPCもですが、これらAndroidのMinecraftクローンの中にはウイルスが仕掛けられていたりする可能性があります。 信用できない会社 個人から発売 配布されているゲームについては注意しましょう 当Wikiでは一切責任を負いません どう見ても他ゲームの画像を流用していたりするゲームについては信頼できないため記載しません。 Minecraft ゲーム名 紹介ページ[Wiki] マルチプレイ 有料か 評価 オープンソース 出来事 ジャンル OS Minecraft – Pocket Edition Please Wait はい はい S なし なし 同じ Android ios 無料ゲーム 3Dブロックグラフィックス [部分編集] +サンドボックス ゲーム名 紹介ページ マルチプレイ 評価 備考 機種 Exploration Lite 紹介ページ 不明 なし Android Starve Game 紹介ページ 不明 なし Android Buildcraft 紹介ページ 不明 なし Android Wasteland 紹介ページ 不明 なし Android Mine World Craft 紹介ページ 不明 なし Android Tower Craft 3D Please Wait 不明 なし Android World Craft 2 Exploration 紹介ページ あり なし Android WorldCraft HD 紹介ページ 不明 なし Android SimpleCraft HD 紹介ページ なし なし Android Minebuild 紹介ページ なし なし Android Minedroid 紹介ページ なし B Android Medieval Craft Town Building 紹介ページ ? C Android Medieval Craft 3 紹介ページ なし ? Android World of Cubes Please Wait あり A クロスプラットフォーム、スマートフォン Little Craft 紹介ページ なし なし Android pixelcraft 紹介ページ なし なし Android freeminer Please Wait なし なし Android minetest 紹介ページ なし なし Android Multicraft Pocket Edition 紹介ページ なし なし Android multicraft2 紹介ページ なし なし Android Survivalcraft Minebuild World 紹介ページ なし なし Android Survival Craft Exploration 紹介ページ なし なし Android FreeCraft (parody of Minecraft 紹介ページ なし なし Android Cubes Craft HD 紹介ページ なし なし Android Savanna Craft PleaseWait なし なし Android Pirate Craft PleaseWait なし なし Android FreeCraft PleaseWait なし なし Android Jurassic Craft PleaseWait なし なし Android World of Craft Survival Build PleaseWait なし なし Android Five Craft Nights PleaseWait なし なし Android World of Craft Mine Forest PleaseWait なし なし Android Halloween Craft Mine Horror PleaseWait なし なし Android Five Craft Nights Reborn PleaseWait なし なし Android WorldCraft 3D Blocks Craft PE PleaseWait なし なし Android PlanetCraft PleaseWait なし なし Android Overcraft 2 PleaseWait なし なし Android Winter Craft 3 Mine Build PleaseWait なし なし Android SimpleCraft 2 Biomes PleaseWait なし なし Android Winter Craft 4 PleaseWait なし なし Android City Craft 3 TNT Edition PleaseWait なし なし Android SimpleCraft 2 PleaseWait なし なし Android Winter Blocks PleaseWait なし なし Android Medieval Craft 2 Castle Build PleaseWait なし なし Android Summer Story PleaseWait なし なし Android City Craft Herobrine PleaseWait なし なし Android Winter Craft 2 Survival PleaseWait なし なし Android City Craft Building PleaseWait なし なし Android City Craft 2 TNT Clowns PleaseWait なし なし Android Winter Craft HD PleaseWait なし なし Android Summer Craft Exploration PleaseWait なし なし Android Heaven Story HD PleaseWait なし なし Android Moon Craft HD PleaseWait なし なし Android Craft Exploration Survival PE PleaseWait なし なし Android Crafting and Building PleaseWait なし なし Android Cubed Craft Survival PleaseWait なし なし Android Creative Craft PleaseWait なし なし Android Poky Craft - Jolly Edition PleaseWait なし なし Android Skyblock Craft PleaseWait なし なし Android Tiny Craft PleaseWait なし なし Android Minecarft 3 Pro Edition PleaseWait なし なし Android Craft Exploration Master PleaseWait なし なし Android Exploration Craft PleaseWait なし なし Android iLands PleaseWait なし なし Android WorldCraft 3D Blocks Craft PE PleaseWait なし なし Android Planet of Cubes - Blocks Craft PleaseWait なし なし Android Summer exploration Story mode PleaseWait なし なし Android ExploreCraft 2 Build Edition PleaseWait なし なし Android SimpleCraft 2 Biomes PleaseWait なし なし Android Exploration Craft Lite PleaseWait なし なし Android Mini Craft Mod PleaseWait なし なし Android クラフトの世界:ビルド PleaseWait なし なし Android Pizzeria Craft Survival PleaseWait なし なし Android MultiCraft ― Free Miner! PleaseWait なし なし Android Planet of Cubes - Blocks Craft PleaseWait なし なし Android MultiCraft Classic (OLD) PleaseWait なし なし Android PixelCraft — 3D Survival! PleaseWait なし なし Android minetest(freeminer) PleaseWait なし なし Android Blox Craft - Castle World PE PleaseWait なし なし Android Cartoon Craft Castle World PE PleaseWait なし なし Android Megacraft Block Story World PleaseWait なし なし Android Pixel block Story Mode PleaseWait なし なし Android Voxel Craft Castle Build PE PleaseWait なし なし Android magichet PleaseWait なし なし Android Winter Multicraft Pocket Ed PeaseWait なし なし Android WorldCraft 3 HD PleaseWait なし なし Android Buildcraft(GameABC Studio) PleaseWait なし なし Android Squeake Craft PleaseWait なし なし Android Crafting Game Pocket Edition PleaseWait なし なし Android Snow Craft PleaseWait なし なし Android Winter Crafting Survival PleaseWait なし なし Android Pocket Craft Exploration PleaseWait なし なし Android Monster Craft Minebuild2 PleaseWait なし なし Android Winter Multicraft Pocket Ed PleaseWait なし なし Android FreeCraft Exploration PleaseWait なし なし Android Island Craft World Exploration PleaseWait なし なし Android Block World Pixel Craft PleaseWait なし なし Android Galaxy Craft Exploration PleaseWait なし なし Android Pixel Craft Story mod PleaseWait なし なし Android Story craft Island Survival PleaseWait なし なし Android Ark Craft Survival Evolved PleaseWait なし なし Android Siberia World Survival Craft PleaseWait なし なし Android Forest Craft Bulding House PleaseWait なし なし Android Block Builder Mine Build FREE PleaseWait なし なし Android World Craft Survival PleaseWait なし なし Android Singlecraft Multi World PleaseWait なし なし Android Siberia Craft Winter Hunter PleaseWait なし なし Android Worldcraft Exploration 3D PleaseWait なし なし Android Minebuild Worldcraft Survival PleaseWait なし なし Android Crafting and Builder PleaseWait なし なし Android PlanetCraft PleaseWait なし なし Android Worldcraft Pocket Edition PleaseWait なし なし Android World of Craft Water Survival PleaseWait なし なし Android Pixel Block Cube Craft Builder PleaseWait なし なし Android World Сraft Pocket Edition PleaseWait なし なし Android New World Craft Free Edition PleaseWait なし なし Android Siberia Winter Craft FREE PleaseWait なし なし Android Safari Craft - survival island PleaseWait なし なし Android Obsidian Craft Pocket Edition PleaseWait なし なし Android Horror Craft Five Nights PleaseWait なし なし Android Dragon Craft Pocket Edition PleaseWait なし なし Android Horror Craft 5 nights Free PleaseWait なし なし Android Cast Craft PleaseWait なし なし Android Kingdom Craft (pre-release) PleaseWait なし なし Android Crafting Game + Crafting Guide PleaseWait なし なし Android Crafting Game Build a House PleaseWait なし なし Android Crafting Game Build a village PleaseWait なし なし Android Craft Games PleaseWait なし なし Android Pickaxe Games PleaseWait なし なし Android Castle Craft Build Sandbox PleaseWait なし なし Android Crafting Building and Survival PleaseWait なし なし Android Modern House Craft PleaseWait なし なし Android Village Craft Pocket Edition PleaseWait なし なし Android Pocket Edition Mine PleaseWait なし なし Android Multicraft Free Pocket Edition PleaseWait なし なし Android マインクラフト世界のパロディ PleaseWait なし なし Android 世界のクラフトパロディ PleaseWait なし なし Android World of Craft Discovery PleaseWait なし なし Android SkyBlock Survival Craft PleaseWait なし なし Android Craft Exploration Master PleaseWait なし なし Android Craft Exploration Master 2 PleaseWait なし なし Android Winter craft snow build PleaseWait なし なし Android Survival Games PleaseWait なし なし Android Crafting For Girls PleaseWait なし なし Android Crafting Pocket edition free PleaseWait なし なし Android Pocket edition free PleaseWait なし なし Android Crafting games for girls PleaseWait なし なし Android Tutorial for Minecraft PleaseWait なし なし Android Western Craft 2 Wild West PleaseWait なし なし Android Herobrine Craft Magic Recipe PleaseWait なし なし Android Fairy Craft PleaseWait なし なし Android Construct Craft Block QUAD PleaseWait なし なし Android Fairy Craft 2 PleaseWait なし なし Android Western Craft Wild West PleaseWait なし なし Android The Elder Craft Frozenland PleaseWait なし なし Android Tropical Craft 2 Jungle Mine PleaseWait なし なし Android Terra Craft World PleaseWait なし なし Android Tropical Craft Jungle Story PleaseWait なし なし Android Craft Minecraft 2016 PleaseWait なし なし Android WorldCraft 2 Pocket Edition PleaseWait なし なし Android Modern House 2 Build Craft PE PleaseWait なし なし Android Multicraft Pixel gun 3d PleaseWait なし なし Android マインクラフト無料ダウンロ PleaseWait なし なし Android Multicraft Gun 3d Story mode PleaseWait なし なし Android Pixel WorldCraft Story Mode PleaseWait なし なし Android Ssundee minecraft game PleaseWait なし なし Android FreeCraft, survival a creative PleaseWait なし なし Android Maincraft survivalcraft PleaseWait なし なし Android ピクセルブロックサバイバルクラフト PleaseWait なし なし Android SkyBlock Survival Craft PleaseWait なし なし Android Ocean Is Home Survival Island PleaseWait なし なし Android アドベンチャークラフト PleaseWait なし なし Android SurvivalCraft Explore World HD PleaseWait なし なし Android 素敵な造り:クラフトの生存 PleaseWait なし なし Android Skyblock Craft PleaseWait なし なし Android Dread Craft - Русская Версия PleaseWait なし なし Android Limon Craft - Super Edition PleaseWait なし なし Android OneMil Craft PleaseWait なし なし Android Reloaded Craft PleaseWait なし なし Android Crafting 2 PleaseWait なし なし Android Dreadcraft HD PleaseWait なし なし Android Craft story walking dead PleaseWait なし なし Android Buildcraft PE Worldcraft PleaseWait なし なし Android World Craft - Dream Island PleaseWait なし なし Android Multicraft Free Maynkraft PleaseWait なし なし Android Pixel Multicraft Story mode PleaseWait なし なし Android Five Nights at Minebuild PleaseWait なし なし Android Shelter planets story mode PleaseWait なし なし Android Planet Craft Survial City PleaseWait なし なし Android Story mode pixel block gun 3d PleaseWait なし なし Android CraftyWorld Survival PleaseWait なし なし Android Citycraft pixel Strike 3d PleaseWait なし なし Android Five Multicraft Nights Craft PleaseWait なし なし Android Build craft walking dead PleaseWait なし なし Android Block Craft Space Edition PleaseWait なし なし Android FancyCrafting-空想 工芸 PleaseWait なし なし Android クリスマス クラフト PleaseWait なし なし Android AlienCraft-3D- PleaseWait なし なし Android Cube World Survival Simulator PleaseWait なし なし Android Crafting Games Build Craft PleaseWait なし なし Android World Exploration and Craft PleaseWait なし なし Android Crafting Pocket Edition PleaseWait なし なし Android Worldcraft Super Craft PleaseWait なし なし Android WORLDCRAFT - HUNGER GAMES PleaseWait なし なし Android Worldcraft Block Story Mode PleaseWait なし なし Android Minebuild free maynkraft PleaseWait なし なし Android Multicraft syberia story mode PleaseWait なし なし Android Бесплатный майнкрафт 2 PleaseWait なし なし Android Play survival craft PleaseWait なし なし Android Five Mayncraft night PleaseWait なし なし Android Castle Medieval Build Craft PleaseWait なし なし Android Pickaxe Game Crafter PleaseWait なし なし Android Modern House Building PleaseWait なし なし Android MineBuilder Craft PleaseWait なし なし Android Build a Village PleaseWait なし なし Android Mineblock PleaseWait なし なし Android Planet Build of Craft PleaseWait なし なし Android Freeminer- Parody PleaseWait なし なし Android ロボットクラフト PleaseWait なし なし Android SkyBlock - Craft your island PleaseWait なし なし Android Cube Fire PleaseWait なし なし Android Cutecraft PleaseWait なし なし Android SkyBlock Craft Adventure PleaseWait なし なし Android Mini Craft Mod PleaseWait なし なし Android Supreme Craft Lite VR Please Wait X - - Android+VR +FPS ゲーム名 紹介ページ マルチプレイ 評価 備考 機種 Block Warfare Zombies(Free) Please Wait なし なし Android Block Warfare Medieval Combat(Free) Please Wait あり? なし Android Block Ops FREE Please Wait あり? なし Android +アクションシューター ゲーム名 紹介ページ マルチプレイ 評価 備考 機種 Iron Cube Please Wait あり B Windows,Android ジャンルわけがまだのもの +... ゲーム名 紹介ページ[Wiki] マルチプレイ 評価 使用エンジン ジャンル 機種 SpaceCraft FREE Please Wait 不明 なし なし 同じ Android Block OpsⅡ FREE Please Wait あり なし なし FPS Android Terrablock Please Wait 不明 なし なし 同じ Android Lego Craft Block QUAD Please Wait なし なし なし 同じ Android Survival Games Please Wait あり? なし なし PvP Android The Survival Hunter Games Please Wait マルチプレイ なし なし PvP Android Guncrafter Please Wait あり なし なし FPS Android Guncrafter Christmas Please Wait あり なし なし FPS Android Block Island Please Wait 不明 なし なし サバイバル Android Cops N Robbers Please Wait あり なし なし FPS Android Cpps N Robbers 2 Please Wait あり なし なし FPS Android Block Gun 3D Ghost Ops Please Wait 不明 なし なし FPS Android Block Gun 3D Zombie Farm Please Wait 不明 なし なし FPS Android Block Gun 3D Hunted Hollow Please Wait 不明 なし なし FPS Android Block Gun 3D Please Wait 不明 なし なし FPS Android Craft Battle 3d Please Wait 不明 なし なし FPS Android Cube Gun 3d Please Wait 不明 なし なし FPS Android Mine Gun 3d Please Wait 不明 なし なし FPS Android Skyblock Island Survival Game Please Wait 不明 なし なし FPS Android Survival Games Please Wait 不明 なし なし FPS Android Pixel Gunner Please Wait 不明 なし なし FPS Android Pixel Runner Please Wait なし なし なし ランニング? Android Pixel Smash Please Wait なし なし なし PvE? Android Pixel Warrior 3D Please Wait あり なし なし FPS Android デスブロックス2 Please Wait あり なし なし FPS Android ZombieCraft Please Wait なし なし なし PvE Android Craft Field Please Wait 不明 なし なし ジャンル Android,OSX,Windows,Ouya,Linux Burg Verteidigung 3D Please Wait 不明 なし なし PvE Android 2Dグラフィックス +サンドボックス ゲーム名 紹介ページ マルチプレイ 評価 備考 機種 OmniDig Please Wait なし A Android +その他 ゲーム名 紹介ページ マルチプレイ 評価 ジャンル 備考 機種 uCraft A Minecraft Simulator Please Wait なし B シュミレーション Minecraftのシュミレーション Android PickCrafter Please Wait なし B クッキークリッカー iOS,Android ジャンル分けがまだのもの +... ゲーム名 紹介ページ[Wiki] マルチプレイ 評価 使用エンジン ジャンル 機種 Mine to Escape Please Wait 不明 なし なし 同じ Android GhastyGhasto s Angry Minecraft Please Wait 不明 なし なし 不明 Android WorldCraft 2D Please Wait なし なし なし 同じ Android The Blockheads Please Wait あり なし なし 同じ Android Gem Miner Please Wait なし なし なし 同じ Android Mine to Escape Please Wait なし なし なし 同じ Android The HinterLands Please Wait 不明 なし なし 同じ Android Mine Clicker Please Wait なし なし なし Cookie ClickerのMinecraft版 Android 有料ゲーム 3Dブロックグラフィックス +サンドボックス ゲーム名 紹介ページ[Wiki] 体験版は マルチプレイ 評価 備考 価格 機種 Survivalcraft 紹介ページ はい 不明 S なし \399 Android,iPhone,WindowsPhone Adventure With... Please Wait なし あり B 題名が長いので略 \101 Android,iOS Mine Builder 紹介ページ なし あり A \101 Android Hode PleaseWait なし なし B \166 Android Squeake Craft PLUS PleaseWait なし なし B \119 Android Exploration PleaseWait なし なし A \400 Android Craft Exploration Master Lite PleaseWait なし なし B \234 Android +ジャンルわけがまだのもの ゲーム名 紹介ページ[Wiki] 体験版は マルチプレイ 評価 備考 ジャンル 機種 Pixel Gun 3D Please Wait はい はい A なし FPS Android,iPhone Block Story Block Story日本Wiki (他運営Wiki) はい 不明 A なし 同じ Windows,Mac,Android,iPhone Discovery Please Wait はい 不明 B なし 同じ Android Xbox 360 iPhone Windows Phone Windows8 Robinsons Craft Please Wait あり なし なし 注意こちらをご覧ください 同じ Android Block Warfare Zombies Please Wait あり あり? C なし 同じ Android Slenderblocks Please Wait なし 不明 なし なし 不明 Android Block Warfare Medieval Combat Please Wait あり あり? なし なし FPS Android Mineforge Please Wait なし 不明 なし なし 同じ Android Block Warfare Please Wait なし あり なし なし FPS Android Block Ops Please Wait あり あり なし なし FPS Android SpaceCraft Please Wait あり 不明 なし なし 同じ Android Black OpsⅡ Please Wait あり あり なし なし FPS Android Terrablock Premium Please Wait あり 不明 なし なし 同じ Android Guncrafter Pro Please Wait あり あり なし なし FPS Android Block Gun 3D Ghost Ops Pro Please Wait あり あり なし なし FPS Android Minebuilder Please Wait なし あり S なし 同じ Android,iPhone The HinterLands Please Wait あり 不明 なし なし 同じ Android Pixel War Please Wait なし あり なし なし FPS Android Please Wait 体験版は 不明 なし なし 同じ Android |Please Wait|体験版は|不明|なし|なし|同じ|Android| Please Wait 体験版は 不明 なし なし 同じ Android 2Dグラフィックス その他 +... ゲーム名 紹介ページ[Wiki] 体験版 マルチプレイ 評価 出来事 ジャンル 機種 まだありません ジャンル分けがまだのもの +... ゲーム名 紹介ページ[Wiki] 体験版は マルチプレイ 評価 出来事 ジャンル 機種 Terraria 英語版 Terraria紹介ページ なし あり A Notchから絶賛 同じ クロスプラットフォーム
https://w.atwiki.jp/devemin/pages/13.html
●Activityの回転時の再生成への対応 ①再起動させなければいいので、onConfigurationChanged() メソッドをオーバーライド ②Activityのマニフェストに android configChanges="orientation|keyboardHidden" @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); } http //d.hatena.ne.jp/hyoromo/20090712/1247385249 (Softbank 005SHでは、keyboardHiddenが必要だった。) ●Eclipseの入力補完(オートコンプリート)が遅い件 バージョン3.62にすれば問題ないらしい ●アップデート後など、eclipseが起動しなくなった場合 eclipse\configuration\jp.sourceforge.mergedoc.pleiades フォルダを削除したらOKだった ●Android アプリ開発時、有料・無料の2種プロジェクトを作るTips (ソースを2プロジェクトで共有する方法) こちらを参考にさせてもらいました。 (Androidの無料アプリ・有料アプリを切り替えてビルドする方法) http //d.hatena.ne.jp/eaglesakura/20100629/1277832265 上記URLで書いてあった方法は、部分的に、自分のアプリでは対応できない部分があったので、自分のやった方法で、全体名流れを補足。 まず2つプロジェクトを普通に作る。(基本app-freeと派生app-paid) 2つのパッケージ名はそれぞれ、 com.appli.free com.appli.paid など、最後の1段落のみ変えたりするとわかりやすいかも。 プロジェクト名は、ここでは「app-free」「app-paid」としてみる。 派生プロジェクトpaidでは、src、assets、resディレクトリを、 リンクしたディレクトリとする。 派生プロジェクトapp-paidでは、基本プロジェクトapp-free内の自動生成ファイルR.javaが必要になる。 手動で毎回やるのは酷なので、派生プロジェクトapp-paidビルド時に毎回app-free側のR.javaが自動でコピーされるよう、バッチファイルを作成、プロジェクトのプロパティ、ビルダー、で、ビルド時に毎回実行されるようにする。初回はプロジェクトのクリーンを実行で、×マーク消える。 ${build_project}\rcopy.bat ${build_project} 上記サイトを参考にさせていただきました。 rcopy.bat -------------------------------- @echo off SET PARENT_PROJECT=app-free SET CURRENT_PROJECT=app-paid REM 定義ファイルをコピーする cd ..\%PARENT_PROJECT%\ REM genフォルダをコピーする xcopy /s /e /y .\gen ..\%CURRENT_PROJECT%\gen cd ..\CURRENT_PROJECT\ -------------------------------- リソースを共有するので、有料版、無料版をそれぞれリソースに含めるので、容量はダブって損となる。気にする人は気にするかも?でも自分は利便性を取りました。 @string/app_name @string/app_name_paid @drawable/icon @drawable/icon_paid AndroidManufest.xmlは、アプリそれぞれに設定する。 (パッケージ名、label ) アクティビティ名を、省略名ではなく、 activity android name="light.diary.plus.EditWindow" などにする必要があるかも これらの結果、 app-freeプロジェクト、はほかの通常のプロジェクトとなんら変わりない app-paidプロジェクトは、res, asset, srcがリンクフォルダであり、src内パッケージは「com.appli.free」がある状態。 ×印が消えない場合は、プロジェクトのクリーン&eclipseの再起動、F5キーによるリフレッシュなどをトライ。 (必要に応じて、import light.diary.plus.R; ?) 有料・無料の処理切り分けは、getPackageName()で行う。 ●プログレスダイアログProgress Dialog 既に動いているサンプルをそのまま使うのが吉。 スレッド以外でGUI操作するとメモリエラーとなる。 https //groups.google.com/forum/#!msg/android-group-japan/0YlnSLptx8w/g6kAZuxrR14J 引用 ProgressDialog progressDialog; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); progressDialog = new ProgressDialog(this); /*progressDialog.setTitle("処理中"); progressDialog.setMessage("処理を実行中です"); progressDialog.setIndeterminate(false); progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); progressDialog.show();*/ Thread thread = new Thread(this); thread.start(); } public void run() { // 時間のかかる処理をここに記述。 try { progressDialog.setTitle("処理中"); progressDialog.setMessage("処理を実行中です"); progressDialog.setIndeterminate(false); progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); handler.post(new Runnable() { @Override public void run() { progressDialog.show(); } }); Thread.sleep(5000); } catch (InterruptedException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); } handler.sendEmptyMessage(0); } private Handler handler = new Handler() { public void handleMessage(Messa ●ADTアップデート等エラーのときのEclipse クリーン http //www.hlplus.jp/php/blog/index.php?UID=1298450960 名前 コメント
https://w.atwiki.jp/ohden/pages/347.html
Androidのsource取得とbuild。 環境 Ubuntu 10.10 desktop 32bit repo 環境設定 repoは必須なのであらかじめ環境設定しておく。 repoの環境設定 sourceの取得 適当な場所にdirを作成し、移動。 $ cd $ mkdir eclair_build $ cd eclair_build repoの初期設定。とりあえずeclairを取得するように設定してみる。『-b』で取得対象のtagを指定。 ※ 対象のtag名はこちらから $ repo init -u git //android.git.kernel.org/platform/manifest.git -b android-cts-2.1_r4 froyoだとこんな感じ。 $ repo init -u git //android.git.kernel.org/platform/manifest.git -b android-cts-2.2_r4 ちなみに、eclairで指定したらこんなん出た。tag名じゃないと取れないんですかね。 $ repo init -u git //android.git.kernel.org/platform/manifest.git -b eclair error.GitError platform/bionic gc fatal Not a git repository '/home/kisaragi/eclair_build/.repo/projects/bionic.git' で、設定したら実際に取得。 $ time repo sync -j4 2 1 | tee sync.log ※timeを付けると実行にかかった時間を最後に教えてくれる。リダイレクトとパイプの意味は こちら 長いから...取得にえらい時間がかかる。 build 取得が完了したbuildに必要な環境を整える。sourceと一緒に環境設定ようのsh scriptがあるので適応。 $ source build/envsetup.sh including vendor/aosp/vendorsetup.sh この『envsetup.sh』の中に『lunch』って関数が定義してあるので実行。 $ lunch You're building on Linuxgeneric-eng simulator aosp_emulator_us-eng aosp_emulator_eu-eng aosp_dream_us-userdebug aosp_dream_eu-userdebug aosp_dream_us-eng aosp_dream_eu-eng aosp_sapphire_us-userdebug aosp_sapphire_eu-userdebug aosp_sapphire_us-eng aosp_sapphire_eu-engLunch menu... pick a combo 1. generic-eng2. simulator3. aosp_emulator_us-eng4. aosp_emulator_eu-eng5. aosp_dream_us-userdebug6. aosp_dream_eu-userdebug7. aosp_dream_us-eng8. aosp_dream_eu-eng9. aosp_sapphire_us-userdebug10. aosp_sapphire_eu-userdebug11. aosp_sapphire_us-eng12. aosp_sapphire_eu-engWhich would you like? [generic-eng] 1============================================PLATFORM_VERSION_CODENAME=RELPLATFORM_VERSION=2.1-update1TARGET_PRODUCT=genericTARGET_BUILD_VARIANT=engTARGET_SIMULATOR=falseTARGET_BUILD_TYPE=releaseTARGET_ARCH=armHOST_ARCH=x86HOST_OS=linuxHOST_BUILD_TYPE=releaseBUILD_ID=ECLAIR============================================ とりあえずデフォの『generic-eng』を選んでみたが...これらの意味ちゃんと調べんとね...dreamってなんや...(-ω-;) で、build。環境の良い人だと『-j8』くらいの方が良いかも。 $ time make -j4 2 1 | tee make.log で、ちなみに、取得するとき『-b』で指定せんと最新のが取れてくるんじゃが... ど~も最近のは64bit OS環境でないとbuildできんくなっとるらしい。こんなん出た... Checking build tools versions...build/core/main.mk 76 ************************************************************build/core/main.mk 77 You are attempting to build on a 32-bit system.build/core/main.mk 78 Only 64-bit build environments are supported beyond froyo/2.2.build/core/main.mk 79 ************************************************************build/core/main.mk 80 *** stop. 中止. ちなみに、このcheck外してbuildさせてみたら64bitっぽぃheader fileが無いとか怒られて失敗。 gingerbreadのbuildは64bit環境でないとダメなのね。(´・ω・`) で、他にもJDKについて制限がある。 Android Version JDK Version froyo以前 1.5 gingerbread以降 1.6 1.6系が入ってたら1.5系への切り替えが必要。 javaの切り替え。以下のコマンドを実行して1.5系を選択。 $ sudo update-alternatives --config java There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path 優 Status------------------------------------------------------------* 0 /usr/lib/jvm/java-6-sun/jre/bin/java 63 auto mode 1 /usr/lib/jvm/java-1.5.0-sun/jre/bin/java 53 manual mode 2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual modePress enter to keep the current choice[*], or type selection number 1update-alternatives using /usr/lib/jvm/java-1.5.0-sun/jre/bin/java to provide /usr/bin/java (java) in manual mode. javacも切り替え。 $ sudo update-alternatives --config javac There are 2 choices for the alternative javac (providing /usr/bin/javac). Selection Path 優 Status------------------------------------------------------------* 0 /usr/lib/jvm/java-6-sun/bin/javac 63 auto mode 1 /usr/lib/jvm/java-1.5.0-sun/bin/javac 53 manual mode 2 /usr/lib/jvm/java-6-sun/bin/javac 63 manual modePress enter to keep the current choice[*], or type selection number 1update-alternatives using /usr/lib/jvm/java-1.5.0-sun/bin/javac to provide /usr/bin/javac (javac) in manual mode. これでjavaが原因でbuildが止まることはないはず。1.6系使いたくなったら、同じコマンド実行して1.6系を選択すれば良いハズ。 更新日: 2011年02月18日 (金) 22時51分22秒 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/conn/pages/21.html
このページは現在作成中です Androidアプリの基本構成 Androidアプリは幾つかのコンポーネントを組み合わせて作成する。コンポーネントはその役割ごとに幾つかに分類される。 Androidアプリを構成する4つのコンポーネント もっとも基本的なコンポートネントは次の4種類。 Activities 画面。アクティビティはそれぞれが独立したコンポーネントとして作成され、その組み合わせでアプリを動作させる。別のアプリから、また別のアプリ内のアクティビティを動作させることも可能。 Services 裏側でこっそり働く子。ユーザーインターフェースは持たない。ネットワークからデータをダウンロードしてきたり、別のアプリを操作中に音楽ファイルを再生したり、ユーザーの操作を邪魔することは無い。アクティビティのような他のコンポーネントから起動され、動作を指定される、サービス精神の塊のような存在。 Content Providers アプリケーションのデータへのアクセス共有を管理しデータの読み書きを行う。ファイルシステムやSQLiteなどのDB、インターネット上のデータなど、さまざまな場所に対応する。許可すれば他のアプリからデータの読み書きが可能だし、その逆も可能。動画を配信してくれる業者ではない。 Broadcast Reciever システムからの通知を受け取ったり、システム全体へ通知を発信したりする。例えばスリープに入った、バッテリーが切れ掛かっている、写真を撮った、などなどの通知を受けたり、発信したりできる。 電話を自動録音するアプリなんかだと、電話が掛かってきたという通知を受けサービスを起動し録音する、という使い方が想定される。 他にもコンポーネントには分類されないが、Androidアプリを構成する重要な要素がある。 マニフェスト アプリに属するコンポーネントを規定するのがマニフェストファイル。XML形式で記述する。 Intentフィルターで、アプリのエントリポイント(初期起動するアクティビティ)を指定する。 例:雛形アプリの AndroidManifest.xml。Intentフィルターが Activityの子要素で指定されている。 activity android name=".MainActivity" android label="@string/title_activity_main" intent-filter action android name="android.intent.action.MAIN" / category android name="android.intent.category.LAUNCHER" / /intent-filter /activity 他にも幾つかのIntent Filterアクションおよびカテゴリーがあるが、アプリアイコンから起動する場合はこの指定が必要だと覚えておけばよい。 他のアプリから 特定の Intentアクションにより起動されるアプリは、別の指定を追加する必要がある。 Intent(インテント:意図) 特定のアクティビティを指定、または「何をしたいのか」を指定し別のアプリを起動する。 同アプリ内のアクティビティ間連携にも使用される。 例:明示的に特定のアクティビティを指定し、EditTextボックスの入力値を渡している Intent intent = new Intent(this, DisplayActivity.class); EditText editText = (EditText) findViewById(R.id.input_message); String message = editText.getText().toString(); intent.putExtra(EXTRA_MESSAGE, message); startActivity(intent); 例:データ表示を指定し、Webページを開く Uri uri = Uri.parse("http //www.android.com"); Intent intent = new Intent(Intent.ACTION_VIEW, uri); startActivity(intent); 簡略化のため省いているが、通常は事前に実行可能なIntentかチェックするためPackageManagerを使用する。この Intentで開かれるアプリは Intent Filterにて ACTION_VIEWアクションを受け付ける指定があるものの中から選ばれる。 リソース アプリが利用する画像ファイル、レイアウト定義、言語ごとの文字列ファイルなどをひとまとめにし、Rクラスを通じた共通のアクセス方法を提供する。画像、動画、音声などのデータファイル、XMLファイルで構成される。 リソースは異なる解像度、画面サイズ、言語に対応するディレクトリに分けて構成することで自動的に対応するディレクトリ内のファイルが利用されるように最適化される。詳細はこちら その他 基本の4コンポーネント種とリソースの他に、これらをサポートするコンポーネントが幾つかある。 Intent Fragment