Android-Studio dependencies のバージョン記述を「+ (プラス) のみ」で常に最新バージョンに対応させる

MavenRepository 経由でライブラリを追加するとして, 最近の Android-Studio では, GUI上の選択操作から build.gradle に書き込んでくれる.

Choose_Library_Dependency_と_Project_Structure

サポートライブラリや GooglePlay ライブラリのバージョン記述の形式が

「19.x.x」( x: 数字 )

でもなく

「19.x.+」

でもなく

「+」

のみだったりする.

これまで書いてた dependencies の記述

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.11.+'
    }
}

とか

dependencies {
    compile 'com.android.support:support-v4:19.1.0'
    compile 'com.android.support:appcompat-v7:19.1.0'
    compile 'com.google.android.gms:play-services:48.0.3'
}

などは, すべて「+ ( プラス ) 」のみの記述にして,

続きを読む >>


Admob からメール「最新版の SDK にアップグレードしてください」

Android で Admob 利用のアプリ開発者にはメールがきてるはず.

受信トレイ

8/1 にサービス終了するという古い Admob SDK ライブラリの件っぽい.

Android 向け Google AdMob SDK(単体版)のサポート終了について
Play ストアでは、単体版の Google AdMob SDK を利用する新規アプリやアップデートされたアプリの受付を 2014 年 8 月 1 日をもって終了いたします。この単体版の SDK は広告 ID をサポートしていないため、この日以降は Google Play 広告ポリシーに準拠したものではなくなります。

で, 「新しい Admob の実装をしなさい」という話のよう.

そのときの利点は以下であると書いてある.

端末識別子を全面的にサポート
Google の iOS や Google Play 向けのサービス SDK で、Android 広告 ID などの匿名の端末識別子が全面的にサポートされるようになりました。こうした識別子が使えるようになることで、マーケティング担当者は価値の高いユーザー に的確にアプローチして接点を持つことが可能となり、開発者は eCPM や広告掲載率の向上によって収益性を高めることができます。

シームレスな自動アップデート(Android)
このたび Google Mobile Ads SDK が Google Play サービスに完全に統合されました。これにより、アプリで AdMob のマイナー アップデートとパフォーマンスの改善が自動化されるようになり、APK のアップデートや Play ストアへの再送信が不要になります。

けどまあ, 利点がなくても 8/1 には変更実装しなければならないということなので実際にやってみよう, と.

Google が指定するリファレンスページは以下.

Downloads - Google Mobile Ads SDK — Google Developers

スタート ガイド - Google Mobile Ads SDK — Google Developers

Google Play 開発者サービスへの移行 - Google Mobile Ads SDK — Google Developers

ざっと見て変更項目は3つっぽい.

1. ライブラリ参照先の変更
2. AndroidManifest.xml の変更
3. ソースコードの変更

とりま, やってみた.

続きを読む >>


Android を「セーフモード」で起動してクソなアプリを特定する

端末を電源ONしてOSの起動が完了すると, それに反応して起動するアプリがつくれるのは周知のことと.

Broadcast Action: This is broadcast once, after the system has finished booting. It can be used to perform application-specific initialization, such as installing alarms. You must hold the RECEIVE_BOOT_COMPLETED permission in order to receive this broadcast.

Intent ACTION_BOOT_COMPLETE | Android Developers

アプリインストール時にパーミッション (権限許可) の確認こそあるものの, 今となっては, 誰もがあんまり気にせずインストールすると思える.

実際, 今, あたしの端末で見てみると,

88個もの のアプリが利用してる.

20140521-042631

で, こんなのみかけた.

アプリのクラッシュ、再起動、電池消費が早いなどの問題が端末で発生している場合、サードパーティ製アプリが原因である場合があります。これが原因であるかどうかを確認するには、端末をセーフモードで起動します。これにより、インストールしたサードパーティ製アプリが一時的に無効になります。

再起動してセーフモードに変更する - Nexus ヘルプ

起動時の端末内ブロードキャストを拾って稼働するアプリがクソな場合この方法が有効です.

やってみた.

続きを読む >>