【Android開発】Android StudioでADB Shellを使用する為の設定

何かしら使用頻度があるADB Shell。
そんなADBコマンドをAndroid Studioで使用する為の設定方法です。

1.ADBプラグインをインストール

Android StudioにADBプラグインがインストールされていれば問題ありませんが、導入されていない場合は手動でインストールをする必要があります。

Android Studioの[ファイル(F)]-[設定(T)]から設定画面を起動して以下画面のように「プラグイン」を選択後、画面右の検索枠で「ADB IDEA」を入力して「リポジトリー内の検索」をクリックします。

「リポジトリー内の検索」リンクをクリックすると以下画面が起動するので、リスト内にある「ADB IDEA」を選択してインストールを進めます。

これでひとまずはAndroid Studio内でADBコマンドが使用できる環境が整いました。

2.ADBコマンドの使い方

実際にAndroid StudioでADBコマンドを利用する方法ですが、ADBコマンドの利用は「ターミナル」画面で行います。
下図Android Studio画面フッター部にあるターミナルボタンを押して起動するか、ALT+F12で起動することができます。

3. 基本的操作

だいたいADBコマンドを使用した時というのは直接にSQLiteのDBを操作したい時なので、その辺のコマンド入力を例として掲載します。

基本中の基本になりますが、ADBコマンドを利用する場合は必ずAVDマネージャーより仮想デバイスを起動させてください。

上図はDBにアクセスする準備までの一連のコマンド入力の流れです。

① adb devices
ADBコマンドで操作可能なデバイス一覧を表示する

② adb -s emulator-5554 shell
対象の仮想デバイスを指定してADBを起動する(この場合はemulator-5554の仮想デバイス)

③ run-as “Package名”
Package名がわからない場合はAndroidManifest.xmlを参照してpackage=”~”で記載されているパスを確認してください。

④ ls
ディレクト検索コマンド
結果表示として、cache、code_cache、databasesが表示

⑤ cd ./databases/
SQliteのDBを操作したいので、cdコマンドで/databasesディレクトリに移動する

⑥ ls
ここではdatabasesディレクト内情報を一覧表示します。
結果表示として、events.dbのデータベースが表示される。

⑦ sqlite3  events.db
データベースにアクセス

ここまでの一連コマンド入力でSQL操作ができる状態になります。
後は、目的に応じたSQLクエリをsqlite>に入力していくだけです。
※SQL分の最後には必ずセミコロン(;)をつけてください。

【Android開発】Call requires API Level XX (current min ~)の解決法

Androidアプリの開発をしているとよく見かけるエラー。

「Call requires API Level XX (current min ~)」

簡単に言ってしまえば、開発する環境に対して制作するアプリのAPIレベルの
最低サポートラインが違うことが原因。

では、どうするか・・・。

たいていは以下の方法で解決できます。

■ 解決方法その1

・AndroidManifest.xmlにAPI Minレベルを追加設定してあげる。

<uses-sdk android:minSdkVersion=”XX” />

例としてCall requires API Level 16 ~のエラーであれば、

<uses-sdk android:minSdkVersion=”16” />



■解決方法その2

・importの参照元を疑う

最新の技術を使う場合はある程度仕方ないことだが、基本的な機能を使用したい場合に開発環境(Android Stuidioなど)のバージョンが新しいことで古いAPIレベルがサポートされないのは非常に困ります。ただ、以前の開発環境では問題なかったなどのケースの場合は、使用したいクラスに関するimport情報を確認してみてください。

例として、カレンダー機能を使ったアプリの実装を考えた場合に最新のAndroid StudioのバージョンでCalendarクラスやGregorianクラスなどを使用するケースではimport内の参照元が以下のようになってしまいます。

import android.icu.util.Calendar
import android.icu.util.GregorianCalendar

これだと、確かにAPIレベル24が最低サポートの対象になってしまいそれ以前のAPIレベルではサポートされなくなってしまいます。
この場合は、以下のように参照元を変更することで解決します。

import java.util.Calendar
import java.util.GregorianCalendar

この参照元に変更することでAPIレベルが15でも16でもサポート対象となりCalendarクラス内のメソッドも使用することが可能になります。

基本は、解決方法その1で記載した内容で対処するのが通常ですが、開発環境が最新過ぎてアプリの対象範囲が極端に狭まるようなら解決方法その2で疑ってみるのもひとつの手です。
それでもダメなら別の方法で実装機能を模索するしかないでしょう。

Xeory base Google アナリティクスの設定で403のエラーになる対処法

ロリポップをレンタルサーバーとして使用している場合によくある話ですが、
結論ロリポップのセキュリティが強すぎることにより起こる現象です。

ここでこの403エラーの対象法を紹介しておきます。
私自身もロリポップをレンタルサーバーとして使用していて、時折、ん??となることがあります。
管理者でも403を出されるのは正直困りますね・・・。

1.403エラーの対処法

ロリポップのユーザー専用ページにログインをしてWAFの設定を行います。
※WAFとはWebアプリケーションのぜい弱性を悪用した攻撃からWebサイトを保護するセキュリティ対策の総称ですね。

WAF設定の入り口は、下図の赤枠にあります。

下図のWAFの設定画面から変更したいドメインの「無効にする」ボタンを押すだけでこの問題が解決します。

 

設定変更に少し時間がかかる場合がある為、少し時間が経過した後にGoogle アナリティクスのコードが保存できるかどうかを確認してみてください。

もし、数時間経過しても403エラーが残るようであれば、先ほどのWAF設定で「ドメインで絞り込む」からエラーの出ているドメインを指定してみてください。
wwwが付くものと付かないものにわけられている可能性があるので、その場合は2か所の変更が必要になります。
例)両方の設定が必要な場合
http://www.xxx.com    → 無効にする
http://xxx.com              → 無効にする

 

※2019-01-10 追記
403エラーはだいたいレンタルサーバーのWAF設定で解決しますね。
ドメインが増える度にいつも403エラーを出している気がします。
つい最近ではElementorで編集後の保存作業で突然「サーバーエラー403」。

Android Studio 日本語化対応

現時点最新バージョンであるAndroid Studio(2.3.3.0)をもとに日本語化対応の紹介をします。

Android Studioの日本語化対応は、Pleiadesを使用して行います。
ただし、PleiadesではAndroid Studioを完全に日本語化するものとしては作成されておらず、一部日本語化にできない、また動作に不具合を引き起こす可能性があることを知っておく必要がります。

Android Studioの日本語化対応

1.日本語化対応プラグインの配置

まず初めに以下リンク先よりご使用のOSに応じてPleiadesプラグインをダウンロードします。
Pleiadesダウンロード

 

上記リンクをクリックするとPleiadesダウンロード画面に遷移しますのでお使いのOSに合わせてプラグインのダウンロードを開始してください。

続いて、ダウンロードしたZipファイルを適当な場所に解凍します。

解凍したファイルの中にplugin/jp.sourceforge.mergedoc.pleiadesフォルダがあるのでそれを丸ごとコピーして以下の場所に保存をします。

■ Windowsの場合
(ユーザホーム)/.AndroidStudio2.3/jp.sourceforge.mergedoc.pleiades
■ Macの場合
(ユーザホーム)/Library/Preferences/AndroidStudio2.3/jp.sourceforge.mergedoc.pleiades

2.起動オプションの編集

プラグインの配置が終了した後、次に起動オプションの編集を行います。
起動したAndroid Studio のタスクバーから[ Help ] – [ Edit Custom VM Option ]を選択します。

[ Edit Custom VM Option ]を選択した後、以下の画面でVM Optionファイルを作成しますか?の問い合せに「Yes」を選択し、ファイルを作成します。

ここからは実際に作成されたCutom VM Optionファイルの編集に移っていきます。
このファイルにデフォルトの設定をコピーして引き継ぎます。

デフォルトファイルの保存先はAndroid Studioのインストール先であるC:\Program Files\Android\Android Studio\bin内のstudio.exe.vmoptionsがデフォルトファイルになります。
これをテキストエディタで開くと、以下のような内容が記述されているので中味をすべてコピーします。

コピーした内容を先ほど生成したstudio64.exe.vmoptionsファイルに丸ごとコピーをして、
その下に以下の2行を追加します。
※追加行(赤字の”ユーザー名”のところは皆さんの環境に合わせてください)
-Xverify:none
-javaagent:C:\Users\ユーザー名\.AndroidStudio2.3\jp.sourceforge.mergedoc.pleiades\pleiades.jar

こんな感じになるはずです。

コピーしたファイルを保存してAndroid Studioを再起動すると以下のように日本語化されているのが確認できると思います。

Android Studioのインストール

Android Studioのインストール方法を紹介します。

以下より最新版のAndroid Studio(無償ソフト)が入手できますのでダウンロードを進めていきます。

Android Studio 最新版ダウンロード

※ダウンロード画面は以下のようなページになり、ここで赤枠の最新版のAndroid Stuidoダウンロードボタンをクリックすることでダウンロードが開始されます。

ダウンロードしたexeファイル(現在の最新バージョンの場合android-studio-bundle-162.4069837-windows.exe)をクリックして実行すると以下のインストール開始画面が起動しますので「Next」ボタンで次の画面に進みます。

以下画面では「Next」ボタンで次のコンポーネント選択画面に進みます。

以下コンポーネント選択画面ではすべてにチェックを入れ「Next」ボタンで次に進みます。

以下画面ではライセンス同意画面になるので「I Agree」ボタンで次の画面へ進みます。

遷移した以下画面では、Android Studioのインストール先とSDKのインストール先の選択画面になりますので、インストール先やインストールフォルダ名などを変更した場合は、ここでパスを修正します。問題なければ、「Next」ボタンで次へ進みます。

インストール作業最後の画面になります。ここではスタートメニューにAndroid Studioを追加するかどうか問われていますが、そのままデフォルトで「Install」ボタンを押してAndroid Studioのインストールを開始します。

 

無事に問題なくインストール作業が完了したら、インストール完了画面が出ますのでこの時点でAndroid Studioのスタート段階であるインストール作業が終了となります。

ただし、この時点ではAndroid Studioが英語表記になっているので、次の記事でこのAndroid Studioの日本語化対応を紹介しますので参考にしてください。