- 追加された行はこの色です。
- 削除された行はこの色です。
#author("2021-04-26T05:37:37+00:00","default:wikiadmin","wikiadmin")
#author("2021-10-04T02:39:20+00:00","default:wikiadmin","wikiadmin")
-Google携帯について
#contents
*記事一覧 [#u1fc2dcd]
#ls2(Android)
*用語一覧 [#z6719e71]
|インテント|明示的はクラス指定、暗黙的はWindowsのExeクリック時に候補に出す様なものでインテントフィルターを設定したものを出す。ペンディングインテントは通知などでつかうインテントのラッパー|
*アプリ配布形式 [#qa215a77]
|APK|一昔前の方式。コンパイル済み|
|AAB|Android App Bundleの略でソースも含む形式。APKにするのはPlayStore側で、2021/08より必須|
*開発参考サイト [#ae91c370]
Androidコードラボ
https://codelabs.developers.google.com/advanced-android-training/
*Androidとは [#m8bd84b2]
Googleが提供するLinuxベースの携帯OS。別に携帯だけに用途は限られていないので、PDAなどにも採用実績あり。世界では安さゆえに圧倒的シェア。日本では安い端末があまりない。
*操作 [#zd3459a1]
|フォルダ作成|何もないところで長押し|
|フォルダ変更|フォルダのタイトルバー長押し|
*実機接続手順 [#l12c0953]
https://blog.codecamp.jp/android_test
**AndroidをVMで動かす [#ndf0a137]
Androidx86プロジェクトからisoイメージを取得して起動する。エミュレータより早いと評判
*Androidアプリのセキュリティ対策 [#z584bcb4]
http://www.ipa.go.jp/about/technicalwatch/pdf/120613report.pdf
*開発環境の構築 [#ta23b244]
**Instant Run [#vda17744]
動的差分更新。2回目のビルド以降で雷のマークをクリックすると必要なライブラリダウンロードしてくれる。
**Android studio [#veeef1a1]
2015年現在ではAndroid Studio一択。IntelliJとベースは一緒。ダウンロードサイズと後で入れるSDKを合わせると数GBクラスのダウンロードが必要となる。
***エミュレーターが起動しない [#eb030657]
emulator: ERROR: x86 emulation currently requires hardware acceleration!
Please ensure Intel HAXM is properly installed and usable.
CPU acceleration status: HAX kernel module is not installed!
+SDK Managerからインストーラーをインストールする。
+ユーザーディレクトリ(通常はc:\USERS)\AppData\Local\Android\sdk\extras\intel\Hardware_Accelerated_Execution_Managerのインストーラーを起動する
**Eclipse(古い) [#ac1a1222]
最近ではすべて導入済みのパッケージもある。AndroidSDK ADTBundleパッケージを入れるのが一番手っ取り早い。その場合は必要なのはJDKのみ
-JDKインストール
-Eclipseインストール
-AndroidSDKインストール(ADTからインストールも出来る、時間かかる)
-ADTプラグインインストール(zipアーカイブからのインストールがおすすめ)
**用語集 [#n4cd3fed]
|用語|説明|
|AVD|仮想デバイス。スナップショットが使える場合は使うと軌道が早い|
|Logcat|ログ表示ビュー。ビューで追加しておくとよい。フィルターを定義しておくと絞れて便利|
**debug.keystore期限切れ [#jd128227]
-古いSDKだと開発用アプリ署名のdebug.keystoreの有効期限が1年。切れると「error generating final archive: Debug certificate expired on 10/08/21 18:14!」とメッセージが出る。debug.keystoreを消せば新しいファイルが作成される。有効期限を確認するには下記コマンドを実行
cd %USERPROFILE%\.android
keytool -list -v -keystore debug.keystore
*エミュレータへのファイル転送 [#g23ee5c0]
DDMSを使ってもいいけど、よくエラーが出るので、コマンドラインで実施。
c:\Program Files (x86)\Android\android-sdk\platform-tools>adb push "E:\x_movie\youtube download\noudou.mp4.mp4" /sdcard/
**JavaDoc [#xce9f01b]
http://www.androidjavadoc.com/2.3/index.html
**アプリの構成要素 [#f2223298]
-アクティビティ
アプリそのもの。他のアプリも呼べる
-レシーバー
イベントリスナー
-サービス
サービス
-コンテンツプロバイダ
*開発TIPS [#p3bf3c86]
**爆速エミュレータ [#l351c6f9]
http://dev.classmethod.jp/smartphone/build-fast-android-emulator/
**ファイル選択 [#qae55d12]
Intentを指定してActivityの戻りを処理する。
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(intent, 1);
*Android NDK [#v7935cb3]
**必要なもの [#v826b407]
NDK本体に加えて、WindowsならCygwin(gcc4,Make)
**NDK インストール [#ocb150d4]
NDK本体はZIPを解答するだけ。あとはパスを通しておく。
**ビルド [#xbb28995]
プロジェクトのTOPへ行ってndk_build
*書籍情報 [#v616727b]
|書籍名|感想|場所|サポートサイト|
|AndroidアプリがWebブラウザ上で部品を並べるだけでできあがる|App Inventorの説明|NCC||
|やさしいAndroidプログラミング|ビューの配置はコードで行っている等表題ほどやさしくはない。各コンポーネントの詳細の使い方を掘り下げる形式。|NCC|http://homepage3.nifty.com/~mana/yasaa.html|
|Android SDK開発のレシピ|逆引きTIPS。iPhoneにも同様の書籍あり|NCC|https://github.com/gabu/AndroidSDK-RecipeBook|
|作ればわかる!Androidプログラミング―10の実践サンプルで学ぶAndroidアプリ開発入門|経験者向け。一通り機能網羅のある10のアプリ|NCC|http://books.shoeisha.co.jp/book/b89122.html|
|15歳からはじめる Androidゲームプログラミング|タイトルにだまされないように!経験者向け。表題どおりゲーム向けSurfaceViewまで|NCC|http://www.rutles.net/books/280.html|
*開発環境高速化 [#n3bbadc4]
+ディスクはHDDだと転送領域100%つかうのでSSDにインストールする。
+ARMベースのエミュレータは遅いんで、intel HAXMなどの代替手段を検討
*シェア [#ibdd93e9]
google公式で月次で更新なのでここを見るのが良い。
http://developer.android.com/about/dashboards/index.html
*Android開発の基礎 [#r52d2834]
|Fragment|複数のActivityで使い回す前提の部品|
|Applink|ブラウザのリンクを横取りできるが、ドメインと一致する必要がある。iOSだとuniversal Link|
|Data Binding|登録したオブジェクトの状態を監視して、Viewに反映してくれる仕組み|
#counter