Androidアプリ開発者が見ておくとよい定番優良便利なライブラリたち - その1

人気なアプリによく使われているライブラリを
列挙してみます。

すべて、jarなファイルたちなので、libs以下において
便利に使いましょう。

AndroidStudioでは build.gradle に以下の記述のみで、
利用できるようになります。

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
}

Android Studio に今は必ず必要な build.gradle の記述 Android Studio に今は必ず必要な build.gradle の記述

Gradle__please

Gradle, please Gradle, please

では、備忘メモ的に挙げていきます。

Android Support Library

Support_Library___Android_Developers

Support Library | Android Developers Support Library | Android Developers

いまや、ほとんどのアプリが使用。
OS 2.x系互換で作るなら必須。
ActionBarやNavigationDrawerなど今どきUIも簡単に実装できるようになります。
Android SDK同梱。

Android Cloud to Device Messaging(C2DM)/GCM

Google_Cloud_Messaging_for_Android___Android_Developers

アプリにGoogleサーバ経由でプッシュな通知を送るライブラリ。
最近、みそもくそもこいつを入れてなんかやりたい、という宣伝派事業主多しで、
ユーザとしてはウザいだけの困ったやつ。

Google Cloud Messaging for Android | Android Developers Google Cloud Messaging for Android | Android Developers
GCM (Google Cloud Messaging) で AndroidアプリにメッセージをPUSHする GCM (Google Cloud Messaging) で AndroidアプリにメッセージをPUSHする

Actionbar Sherlock

ActionBarSherlock_-_Home

古くから Android2.x系互換なActionBarスタイルを実装できる
ライブラリ。
Android SDK内にもcompatなやつが最近登場しているが
なごり的にいまでも利用アプリ多い雰囲気。
当然、ネット上に情報も多い。

ActionBarSherlock - Home ActionBarSherlock - Home

2.x系(API10)で NavigationDrawer を appcompat-v7 で「Resource is not a Drawable (color or path)」 2.x系(API10)で NavigationDrawer を appcompat-v7 で「Resource is not a Drawable (color or path)」

Google Analytics

Google_アナリティクス公式サイト_-_ウェブ解析とレポート機能_–_Google_アナリティクス
Google アナリティクス - Google Play の Android アプリ

定番WEBアクセス解析ツール。
Androidアプリに実装すると、アプリ内でのユーザの挙動や動きを
トラッキングできる、ボタン、イベントなど。

Android Native Application Tracking Overview - Google Analytics — Google Developers Android Native Application Tracking Overview - Google Analytics — Google Developers
Google Analytics SDK for Android v3 (Beta) - Getting Started - Google Analytics — Google Developers Google Analytics SDK for Android v3 (Beta) - Getting Started - Google Analytics — Google Developers

Google gson

google-gson_-_A_Java_library_to_convert_JSON_to_Java_objects_and_vice-versa_-_Google_Project_Hosting
今や主流のJSONスタイルのデータを最もシンプルに
パース&ビルドできる。使い方もシンプル。

google-gson - A Java library to convert JSON to Java objects and vice-versa - Google Project Hosting google-gson - A Java library to convert JSON to Java objects and vice-versa - Google Project Hosting

続きを読む >>


Chrome で Flash を使っているページが表示されたら

なんとなく忘れてました、Flashの存在。

手動でアップデートしてね。Android用『Flash Player』が最新版に [スマホにFlashを入れる方法] | TABROID(タブロイド) 手動でアップデートしてね。Android用『Flash Player』が最新版に [スマホにFlashを入れる方法] | TABROID(タブロイド)

最新版にアップデートすべし、
ということですが、
今や、Google Play Store にも存在しないようです。

GooglePlay-FlashPlayer

で、Adobeの公式サイトから
野良なapkアーカイブとして放出されています。

Flash Player を Android デバイスにインストールする方法 Flash Player を Android デバイスにインストールする方法

アーカイブ版 Flash Player の提供について アーカイブ版 Flash Player の提供について

これ、インストールしてみたけど、
どう確認しようか、
どこで確認したらいいのか。

とりあえず、そんなページを。

Adobe - Flash Player バージョン確認ページ Adobe - Flash Player

このページをAndroid Chromeで表示してみたら、

あれっ、あーっ、

続きを読む >>


2.x系(API10)で NavigationDrawer を appcompat-v7 で「Resource is not a Drawable (color or path)」

横からにゅるりと出てくるメニューの
「Navigation Drawer」

device-2013-08-01-090122

device-2013-08-01-090155

Creating a Navigation Drawer | Android Developers Creating a Navigation Drawer | Android Developers

4系では、動いてたけど、
今回、ActionBarにコンパチなライブラリが登場して。

Support Library Setup | Android Developers Support Library Setup | Android Developers

Sherlockも不要になったという。

[Android Tips] Support Library に追加された ActionBarActivity を使ってみた | Developers.IO [Android Tips] Support Library に追加された ActionBarActivity を使ってみた | Developers.IO

なので、この2つの組み合わせで2系で。
と思いやってみたのですが。

続きを読む >>


AndroidStudio で Android SDK の位置を設定する

Android SDK API18 リリースされていますが。

Android_SDK_Manager

このキャプチャは、コマンドラインから、
SDK Manager を起動したものです。

API18でビルドできないのですが。

で、こんな記事。

Gradle build errors after updating Android Studio - Stack Overflow %title%

なんか、local.properties で位置を指定しなければ、
コンパイルできないとか。

sdk.dir=/Applications/Android Studio.app/sdk

AndroidStudioは、その中にSDKを持ってたのですね。

$ pwd
/Applications/Android Studio.app/sdk
$ ls
add-ons		extras		platforms	tools
build-tools	platform-tools	system-images

AndroidStudio内のSDKを使わずに、
自分で配置したやつを設定しておきます。

[Project Structure]から置き場所を
設定しておきます。
Project_Structure

きっと、gradle-wrapper とか使わずに
自分でOSに入れている gradle を使ったり
するのがいいのだろうかー。


Android の lauchMode が ややこしすぎるので

ややこしいです、Androidのこれ。

android_launchmode

Y.A.M の 雑記帳: Android launchMode の違い Y.A.M の 雑記帳: Android launchMode の違い

たくさん言葉がでてきます。


Activity
Task
Instance

調べてみるともっといろいろ関連がでてきます。
どんどん枝から枝が生えてきます。


Affinity
Stack
Intent

ProgrammingLife.jp: アクティビティとタスク (Android) ProgrammingLife.jp: アクティビティとタスク (Android)

で、これらの詳細設定は、AndroidManifext.xml で設定したり、
以下、直接関係ありそうなのを抜粋。


android:alwaysRetainTaskState=["true" | "false"]
android:clearTaskOnLaunch=["true" | "false"]
android:excludeFromRecents=["true" | "false"]
android:launchMode=["multiple" | "singleTop" |
                    "singleTask" | "singleInstance"]
android:multiprocess=["true" | "false"]
android:noHistory=["true" | "false"]  
android:parentActivityName="string" 
android:stateNotNeeded=["true" | "false"]
android:taskAffinity="string"

activity | Android Developers  activity | Android Developers

あと、コード内で、Intent 経由で起動するとき
のオプションとしてもなんかいろいろあったり。


FLAG_ACTIVITY_BROUGHT_TO_FRONT
FLAG_ACTIVITY_CLEAR_TASK
FLAG_ACTIVITY_CLEAR_TOP
FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET
...
...

IntentのCategoryとExtraとFlagの一覧表を作ってみたよ - hyoromoの日記 IntentのCategoryとExtraとFlagの一覧表を作ってみたよ - hyoromoの日記

Intent | Android Developers Intent | Android Developers

で、もうこれだけ起動方法があったらわけわらなくなります。

基本的な設定からシンプルに進むとして便利なものがあります。

続きを読む >>