にわとりプログラマーの備忘録

覚えたことをすぐ忘れてしまう、自分のための備忘録ブログです。

AndroidStudioでGoogle Play Service APIs を利用できるように設定する

Google Places API for Androidを利用したかったので、AndroidアプリでGoogle Play Service APIs を利用する方法について調べたのでメモしておきます。

Eclipseについては下記のgoogle公式ページ内の"ECLIPSE WITH ADT"を参考にしてください。

参考ページ Setting Up Google Play Services

AndroidStudioのプロジェクト内にあるbuild.gradleに以下の記述を追加

dependencies {
   compile 'com.google.android.gms:play-services:7.5.0'
}

以上で、Google Play Services APIsを利用できるようになります。


エラーについて
実行時に以下のようなエラーが出ることがあります。

Google Play services out of date. Requires xxxxxxx but found xxxxxxxx

これは端末にインストールされている、「Google Play開発者サービス」アプリケーションの
バージョンが古いことが原因です。

google Play store からアプリをアップデートすれば、解決されます。

google store で検索しても出てこない? ので、URLを記載しておきます。
Google Play開発者サービス - Google Play の Android アプリ

gradleはライブラリの依存関係が大分簡単になるので、とても便利だなと思います。

UbuntuでAndroid端末をUSB接続で認識させる方法

UbuntuにUSB接続したAndroid端末を認識させたので、手順をメモしておきます。

参考ページ UbuntuにAndroid端末をUSB接続で認識させる | bgbgbg

認識できていない状態でUSB接続しているのAndroid端末を確認
下記のように表示されて、認識が失敗しています。

$ adb devices
List of devices attached 
????????????	no permissions


UbuntuにUSB接続している端末のベンダーIDを確認
"04dd"がベンダーIDです。

$ lsusb
Bus 002 Device 041: ID 04dd:963f Sharp Corp.


Ubuntuが端末を認識できるようにするための設定ファイルを作成

$ sudo touch /etc/udev/rules.d/51-android.rules

作成したファイルに以下の記述を書き込みます。
"idVendor"の値は、先ほど調べた端末のベンダーIDを記述します。

SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", MODE="0666", GROUP="plugdev"


ファイルの権限を確認

$ ls -l /etc/udev/rules.d/51-android.rules
-rw-r--r-- 1 root root 68  6月 17 00:30 /etc/udev/rules.d/51-android.rules


読み取り権限がない場合は、権限を付加

$ sudo chmod a+r /etc/udev/rules.d/51-android.rules


最後に端末を接続し直して、再度確認

$ adb devices
List of devices attached 
353460051363041	device

無事認識されました。

Ubuntu14.04にAndroidStudioをインストール

apt-get経由でAndroidStudioをインストールしたので、手順をメモをしておきます。

参考ページ Easily Install Android Studio in Ubuntu And Linux Mint

インストール手順

取得元のリポジトリを追加します(非公式)

$ sudo apt-add-repository ppa:paolorotolo/android-studio

インストール

$ sudo apt-get update
$ sudo apt-get install android-studio
実行

以下のコマンドでAndroidSudioが起動します。

$ /opt/android-studio/bin/studio.sh
シンボリックリンクを作成

毎回上記のコマンドを入力するのは、面倒なのでシンボリックリンクを作っておきます。

$ sudo ln -s /opt/android-studio/bin/studio.sh /usr/bin/studio
adbのインストール

ついでに、adbもインストールしておきます。

$ sudo apt-get install android-tools-adb
アンインストール手順

アンインストールの手順もメモしておきます。

最初にppa-purgeがインストールされていない場合は、以下のコマンドでインストールしておきます。

$ sudo apt-get install ppa-purge

以下のコマンドでアンインストールします。

$ sudo apt-get remove android-studio
$ sudo ppa-purge ppa:paolorotolo/android-studio


以上です。
Linuxはインストールが簡単でいいですね!

AndroidStudioでビルドしたAndroidアプリの日本語表示の文字化けを解決

とりあえず、文字コードUTF-8に変更することで、文字化けを解決できます。

build.gradleの修正

AndroidStudioでは、gradleがビルドするときにがOSの文字コードでビルドされます。
UTF-8でビルドするように、gradle.buildに以下の記述を追記します。

tasks.withType(JavaCompile) {
    options.encoding = 'UTF-8'
}
ソースファイルの文字コードを変更

gradle.buildを変更しても、ソースコードが'Shift-JIS'などになっていると、文字化けが起こります。
ソースコード文字コードUTF-8に変更します。

Ubuntu14.04にEclipseをインストール

Eclipseをインストールしたので、手順をメモしておきます。

ダウンロード

Eclipse公式サイトのダウンロードページよりLinux版をダウンロードする。
日本語化するために必要なPleiadesプラグインこちらのページよりダウンロードもしておく。

インストール

ダウンロードしたEclipseのzipファイルを解凍して、/opt 以下にインストールする。

$ cd /opt/
$ sudo tar xavf ~/Downloads/eclipse-*
日本語化

Pleiadesプラグインを/opt/eclipse/ 以下に展開する。

$ cd /opt/eclipse/
$ sudo unzip ~/Downloads/pleiades*

/opt/eclipse/eclipse.iniに以下を追記
'-javaagent:/opt/eclipse/plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar'

$ echo '-javaagent:/opt/eclipse/plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar' | sudo tee -a /opt/eclipse/eclipse.ini 
端末から起動できるように設定

シンボリックリンクを作成しておく。

sudo ln -s /opt/eclipse/eclipse /usr/bin 
アンインストール

ファイルを削除するだけ

$ sudo rm -rf /opt/eclipse/ 
$ sudo rm /usr/share/applications/eclipse.desktop 
$ sudo rm /usr/bin/eclipse 

参考ページ
Ubuntu 14.04 に Eclipse をインストールしたのでメモ - 旧ID:itiriのブログ

Linuxにおける「~/」の意味

Linuxのパス指定で頻繁に利用される「~/」について調べてみました。

(~)はユーザのホームディレクリを指しています。

つまり、「/home/user[ユーザ名]/」 = 「~/」となります。

因みに、「/」はルートディレクトリを指しており、WindowsのCドライブにあたります。

Google Play services out of date. Requires xxxxxxx but found xxxxxxxx の解決策

Goolge Play Servicesのライブラリを利用したandroidのサンプルコードの実行時に
以下のエラーが発生して、アプリが起動できなかったので解決策を書いておきます.
Google Play services out of date. Requires 7571000 but found 7329038」

【原因】
端末にインストールされている「Google Play 開発者サービス」というアプリの
バージョンがライブラリが必要とするバージョンより低いことが原因らしいです.

【解決策】
端末にインストールされている「Google Play 開発者サービス」アプリのバージョンを上げることで解決されます.

Google play store で検索しても出てこない?ので、URLを記載しておきます。

Google Play開発者サービス - Google Play の Android アプリ