メイン

Android アーカイブ

2018年06月09日

Androidアプリをlinuxコマンドラインでビルド(CentOS7.3 32bit)

 今回のOSは
CentOS-7-i386-Minimal-1611.iso
で構築した32ビット版のミニマムインストール
CentOS release 7.3.1611 (AltArch)
javac 1.8.0_171
openjdk version "1.8.0_171"
ldd (GNU libc) 2.17
CentOS7 64bitの時と同様の手順でビルドすると
:app:mergeDebugResources
AAPT err(Facade for 25944244): /opt/android-sdk/build-tools/25.0.2/aapt: /opt/android-sdk/build-tools/25.0.2/aapt: バイナリファイルを実行できません
このエラーメッセージからは様々な情報見つかるが、そもそも32ビットOSには対応していないことが原因。エミュレータの為なのか???
 どうしても32ビットOSでビルドしたければ、32ビット版の build-toolsを指定する...▼

続きを読む "Androidアプリをlinuxコマンドラインでビルド(CentOS7.3 32bit)" »

2018年06月03日

Androidアプリをlinuxコマンドラインでビルド(CentOS6.9 64bit)

前回、CentOS7 64bit + openjdk1.8 + Android Studio Command line tools(sdk-tools-linux-4333796.zip) OK。 しかしミニマムインストールの CentOS6.9 64bitに同様のインストールするとビルドに失敗する。
:app:mergeDebugResources
AAPT err(Facade for 464201322): /opt/android-sdk/build-tools/25.0.2/aapt: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /opt/android-sdk/build-tools/25.0.2/aapt)
GNU Cライブラリ(glibc) が古いことが原因。
yum info glibc
2.12
https://developer.android.com/studio/ によれば動作要件は
GNU C Library (glibc) 2.19 or later
前回 CentOS7 64bitでは 2.17 で一応ビルド成功している。 様々なlibc関連の情報が見つかり ソースからのメークも試したものの、最終的には...▼

続きを読む "Androidアプリをlinuxコマンドラインでビルド(CentOS6.9 64bit)" »

2018年06月02日

Androidアプリをlinuxのコマンドラインでビルドする(CentOS7 64bit)

 32ビット版CentOS6.9でダメだったので いろいろ調べてみることに。
OSは
CentOS-7-x86_64-Minimal-1611.iso
で構築した64ビット版のミニマムインストール
CentOS Linux release 7.3.1611 (Core)
ビルド環境は
https://developer.android.com/studio/
で、現時点の Command line tools only の Linux版
sdk-tools-linux-4333796.zip
をダウンロード。ルートではなく
# useradd -g wheel taro
で作成したユーザーで操作。java は
$ sudo yum -y install java-1.8.0-openjdk-devel
$ javac -version
javac 1.8.0_171
$ java -version
openjdk version "1.8.0_171"
アンドロイド コマンドライン ビルド ツールは...▼

続きを読む "Androidアプリをlinuxのコマンドラインでビルドする(CentOS7 64bit)" »

2018年04月15日

スクリーンセーバーの参考となる古いサンプル

https://android.googlesource.com/platform/packages/screensavers/WebView/+/master/
の WebView-master.tar.gz を展開・コンパイルすると、「&~; がない」、「head がない」、「body がない」など不思議なエラー。
C:\Users\taro\AndroidStudioProjects\ScreensaverWeb\app\src\main\res\assets\default.html
Error:(20, 22) Error: エンティティ"ldquo"が参照されていますが、宣言されていません。
Error:Execution failed for task ':app:mergeDebugResources'.
> C:\Users\toshi\AndroidStudioProjects\ScreensaverWeb\app\src\main\res\assets\default.html:20:22: Error: エンティティ"ldquo"が参照されていますが、宣言されていません。
原因は・・・▼

続きを読む "スクリーンセーバーの参考となる古いサンプル" »

2018年04月14日

オリジナルスクリーンセーバー

 Androidのスクリーンセーバーに動画を使いたい。
 ところが、標準の「フォト」でmp4形式動画ファイルを指定しても再生できない。
 オリジナルスクリーンセーバーを追加できそうなので作ってしまう。
 決め打ちの Movies/sample.mp4 を繰り返し再生するだけのシンプルなアプリコードをGitHubに公開。
https://github.com/remixgrjp/DreamServiceMovie
Android studio 2.3.3 でビルド可能。Empty Activity からプロジェクトを作成し
app/src/main/AndroidManifest.xml
app/src/main/java/asia/remix/daydreammovie/DreamServiceMovie.java
app/src/main/res/layout/dream_service.xml
を編集したもの。
 Widgetと同じくRun → Edit Configuraions... → Run/Debug Configuraions → Launch Option → Nothing とすればインストール可能。

続きを読む "オリジナルスクリーンセーバー" »

2018年04月08日

au HTC J butterfly HTL23 バッテリー交換

HTL23 フルセグ受信・ワンセグタイマー録画可能で 画素数・音質良しのau HTC J butterfly HTL23。
 このバッテリーが寿命となって交換することに、もちろん自己責任で。必要最小限の分解交換手順・・・▼

続きを読む "au HTC J butterfly HTL23 バッテリー交換" »

2018年04月01日

Android音声合成の基本形

android.speech.tts.TextToSpeech でテキストを読み上げる最小限サンプル。
Githubのソースは AndroidStudio2.3.3 Basic Activityテンプレートが元。
app/build.gradle

compile 'com.android.support:appcompat-v7:24.+'
compile 'com.android.support:design:24.+'

としてAndroid2.3 以上に対応。ポイントは...▼

続きを読む "Android音声合成の基本形" »

2018年02月24日

Android7 の x86版 を仮想環境にインストール

前提環境は次の組み合わせ。
android-x86_64-7.1-r1.iso / Windows 7 / Virtualbox 5.0.10
android-x86_64-7.1-r1.iso / Windows 10 / Virtualbox 5.1.30
文末でエクスポートイメージをプレゼント!
一通りの流れは...▼

続きを読む "Android7 の x86版 を仮想環境にインストール" »

2017年10月26日

ApiDemos のビルド

 参考にする為 グーグルのサンプル ApiDemos をビルドした時の記録。
 環境は、Windows7, Android Studio 2.3.3 SDK23, Nexus 5(Android 6.0.1)。

https://android.googlesource.com/platform/development/+/master/samples/ApiDemos/
から最新のソースを取得して Android Studioでインポート。
SDK26 のインストールを求められるので追加。
さらに SDK24, 25 のインストールを求められるので追加。

 なぜか
ApiDemos\app\src\main\res\xml\preference_switch.xml
の拡張子.xmlが無くなっている為ビルドエラーとなるのでファイル名を修正。

 次は
「パッケージandroid.support.annotationは存在しません」
「パッケージandroid.support.v4.printは存在しません」
と警告されたので
Project Structure > app > Dependencies > +
からライブラリを検索して追加。
ApiDemos\app\build.gradle
の dependencies ブロックに
compile 'com.android.support:support-annotations:26.0.0-alpha1'
compile 'com.android.support:support-v4:26.0.0-alpha1'
が追記される。

 最後まで残ったエラー
「パッケージcom.google.android.mmsは存在しません」
については これとは別にソースをビルド必要な模様。
 今回 通信関係のサンプルは不要なので依存しているソース
ApiDemos\app\src\main\java\com\example\android\apis\os
MmsWapPushReceiver.java
MmsMessagingDemo.java
を削除してビルド成功。野良アプリでよければ→ ApiDemos.apk

続きを読む "ApiDemos のビルド" »

2017年10月23日

勝手にパノラマ画像が!?

最大瞬間風速30から45メートルで関東を通過中の台風21号 ラン(LAN)。
Nexus 5、Android 6.0.1 で 多摩川の様子を続けて5枚撮影。1枚目と4枚目は誤フラッシュやベランダ写りこみの為削除。
なんとか会社に到着し、撮影から約3時間後にパノラマ写真が出来上がったという通知が。
▼IMG_20171023_054855.jpg 左方向

▼IMG_20171023_054906.jpg 正面

続きを読む "勝手にパノラマ画像が!?" »

2017年08月06日

スマートフォンを内線電話のように使う

Windows7上のVirtualBox Version5.0.10 で RedHat 64ビット仮想環境を作成。
ネットワークはブリッジアダプターとし、その他はデフォルトの設定値。
http://www.asterisk.org/downloads/asterisknow
から
AsteriskNow-1013-current-64.iso
をダウンロードし、仮想環境のストレージ→光学ドライブへ指定後 起動。
Centos6系同様にインストールし、ネットワーク設定にLAN内の固定IPを指定。

続きを読む "スマートフォンを内線電話のように使う" »

2017年04月30日

オリジナルandroid.view.View参考

Android ADK 組込みプログラミング完全ガイド (Smart Mobile Developer)
全サンプルコードは
https://www.shoeisha.co.jp/book/detail/9784798125930
からダウンロード可能。
『第8章 Android 対応の電子オルゴールを作る』
の簡易サンプルの画面・・・▼


続きを読む "オリジナルandroid.view.View参考" »

2016年08月12日

simple_list_item_1 + SimpleAdapter

android.widget.ListView を使う定番サンプル。
String[] strings = { "1列目", "2列目", "3列目" };
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
	getApplicationContext()
,	android.R.layout.simple_list_item_1
,	strings
);

実際には選択リストの表示名とは別にひもづいた値を利用することがほとんど。
そこで標準のレイアウト android.R.layout.simple_list_item_1 のまま android.widget.ArrayAdapter ではなく android.widget.SimpleAdapter に交換してみる。 あえて動的配列で...
ArrayList<HashMap<String, Object>> arrayList = new ArrayList<HashMap<String, Object>>();
HashMap<String, Object> map = new HashMap<String, Object>();
map.put( "display", "1列目" );
map.put( "offset", 1 );
arrayList.add( map );
map.put( "display", "2列目" );
map.put( "offset", 2 );
arrayList.add( map );
map.put( "display", "3列目" );
map.put( "offset", 3 );
arrayList.add( map );

SimpleAdapter simpleAdapter = new SimpleAdapter(
	getApplicationContext()
,	arrayList
,	android.R.layout.simple_list_item_1 ←★
,	new String[]{ "display"},
	new int[]{android.R.id.text1} ←★
);

2016年08月11日

地図に十字中心線を表示

Android Studio2.1.2 のテンプレートGoogleMapsActivityの地図上に十字中心線を表示する簡単な方法。
その前に、Google Maps APIキーをセットしコンパイルすると
Error:Execution failed for task ':app:transformClassesWithDexForDebug'.> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536
メソッド数の上限を超えた(Building Apps with Over 65K Methods)
→ https://developer.android.com/studio/build/multidex.html?hl=ja
ということで
MyApplication\app\build.gradle
apply plugin: 'com.android.application'

android {
    compileSdkVersion 24
    buildToolsVersion "23.0.3"

    defaultConfig {
        applicationId "asia.remix.map"
        minSdkVersion 10
        targetSdkVersion 24
        versionCode 1
        versionName "1.0"
        multiDexEnabled true ★追加
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:24.1.1'
    compile 'com.google.android.gms:play-services:9.4.0'
}

MyApplication\app\src\main\AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest package="example.myapplication"
          xmlns:android="http://schemas.android.com/apk/res/android"
    >

    <!--
         The ACCESS_COARSE/FINE_LOCATION permissions are not required to use
         Google Maps Android API v2, but you must specify either coarse or fine
         location permissions for the 'MyLocation' functionality. 
    -->
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme"
        android:name="android.support.multidex.MultiDexApplication" ★追加
    >

        <!--
             The API key for Google Maps-based APIs is defined as a string resource.
             (See the file "res/values/google_maps_api.xml").
             Note that the API key is linked to the encryption key used to sign the APK.
             You need a different API key for each encryption key, including the release key that is used to
             sign the APK for publishing.
             You can define the keys for the debug and release targets in src/debug/ and src/release/. 
        -->
        <meta-data
            android:name="com.google.android.geo.API_KEY"
            android:value="@string/google_maps_key"
            />

        <activity
            android:name=".MapsActivity"
            android:label="@string/title_activity_maps"
            >
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>

                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
    </application>

</manifest>
それぞれ ★印の行を追加。
ちなみに googleの巨大なライブラリを使う場合
MyApplication\gradle.properties

左ペインツリー Projectの Gradle Scripts/gradle.properties

VM起動オプション
org.gradle.jvmargs=-Xmx2048m
を指定するとメモリ不足解消とコンパイル時間を短縮(約1/10)。
本題の十字中心線は...▼

続きを読む "地図に十字中心線を表示" »

2016年03月01日

簡易エンドロール

endrollMin SDK Version 10
Android 2.3.4端末 HTC EVO ISW11HT
Android 4.2.2端末 Samsung GALAXY NEXUS SC-04D
Android Studio 1.5.1

ジョークアプリを作った際に試した簡単なエンドロール。
Empty Activity でプロジェクトを新規作成▼

 ↓
endroll

続きを読む "簡易エンドロール" »

2016年01月03日

タイトルバーとアイコン その2

TitleBarIcon Min SDK Version 10
Android 2.3.4端末 HTC EVO ISW11HT
Android 4.2.2端末 Samsung GALAXY NEXUS SC-04D
Android Studio 1.5.1

前回はツールバーへロジックでアイコンを追加
見た目は極力 XML ファイルへ記述したい。
XMLだけでツールバーへアイコンを表示させるには▼

続きを読む "タイトルバーとアイコン その2" »

タイトルバーとアイコン

endroll前提
Min SDK Version 10
Android 2.3.4端末 HTC EVO ISW11HT
Android 4.2.2端末 Samsung GALAXY NEXUS SC-04D
Android Studio 1.5.1

Android 2.* 当時、「タイトルバー」にアイコンを云々・・・だったものが転々と移り変わっている模様。
Android Studio で新しいプロジェクト「Blank Activity」「Empty Activity」「Google AdMob Ads Activity」を作成すると
従来 継承していた「Activity」が「AppCompatActivity」となり「タイトルバー」ではなく「ツールバー」という考え方に。
このツールバーを従来の アイコン+タイトル のスタイルにするには MainActivity で▼

続きを読む "タイトルバーとアイコン" »

2016年01月02日

簡単なAndroidアプリ

Android Studio 1.5.1 をインストールできたところで、早速 簡単なAndroidアプリを。
WiFiデバックすることが多いのでアンドロイド端末のIPアドレスなど ネットワーク情報を取得・表示させるだけのアプリ。
Android Studio で新規プロジェクトを作成。
 ↓
Empty Activity を選択。

続きを読む "簡単なAndroidアプリ" »

2016年01月01日

今どきのアンドロイド開発環境

以前より簡単になり
java JDK の他に 『Android Studio』をインストールすれば開発が可能に。
現時点の最新バージョンは 1.5.1 。中身・操作感は eclipce とほぼ同じ。
今回は こちらから All Android Studio Packages
android-studio-bundle-141.2456560-windows.exe
をインストール。
▼その他 備忘録

続きを読む "今どきのアンドロイド開発環境" »

2012年12月13日

アンドロイド アプリの署名

Eclipse → Project名 → 右クリック
 ▼
Android Tools → Export Signed Application Package

 ▼

続きを読む "アンドロイド アプリの署名" »

2012年12月11日

パッケージ名の変更

eclipseでのパッケージ名を変更する手順。
●プロジェクト名/AndroidManifest.xml
の package= を変更。
●プロジェクト名/res/values/strings.xml
の app_name を変更。

2012年12月10日

プロジェクト名の変更

プロジェクトインポートすると期待しないプロジェクト名になってしまうので変更する
Eclipse → Projectフォーカス → Refactor → Rename


Eclipse → Project名 → 右クリック

 ↓

続きを読む "プロジェクト名の変更" »

2012年12月09日

プロジェクトをWindows7からXPへ移行

 Windows7 上のエクリプスで開発していたプロジェクトをWindowsXP 上のエクリプスへ移行する手順。

●Windows7 上のワークスペースの対象プロジェクトフォルダを圧縮。
 ▼
●WindowsXP のデスクトップなどにプロジェクトフォルダを解凍。
 ▼
●WindowsXP 上のエクリプスにインポート。

このとき、前回のようにグーグル広告のAdMob SDK ライブラリなどを使用している時、下記のようなエラーがでた場合↓

続きを読む "プロジェクトをWindows7からXPへ移行" »

2012年12月08日

android sdk逆引きハンドブック

改訂2版 android sdk逆引きハンドブック
手元に1冊あるとなにかと便利。
サンプルソースもWEBからダウンロード可能。

目次
CHAPTER-05 ウィジェット
95 ウィジェット配置
96 クリックイベント
97 アクティビティ起動
98 削除検知
99 ノーティフィケーション示
100 ダイアログボックス表示
101 リストビュー示

CHAPTER-03
68 配列の中身をリストビューに表示する
69 リストビューレイアウトをカスタマイズ
70 リストビューにアイコン表示
71 リストビューを自動的に最下部までスクロール
72 リストビューにスムーススクロールタブを追加
73 リストビューのスクロールイベントを取得
74 リストビューの選択箇所を取得
75 リストビューの長押し箇所を取得
78 降りたたみ可能な親子リストビュー

CHAPTER-13
240 インテントでイベント追加

CHAPTER-14
262 サービス

2012年12月07日

アプリにグーグル広告を配置

アンドロイドアプリにグーグル広告を配置する手順。
確認した開発環境
WindowsXP SP3 32ビット
Windows7 SP1 32ビット
eclipse-SDK v4.2.1
Android4.2 (API 17)
Google AdMob Ads Sdk v6.2.1
確認機種
au HTC EVO 3D ISW12HT android4
au HTC EVO ISW11HT android2

●グーグル AdMobに登録。
googleが買収したスマートフォン向け広告配信のAdMob
http://www.google.co.jp/ads/admob/
に登録(googleアカウントでよい)して、アプリケーション毎にパブリッシャーID(APIキーではない)を取得。

「サイト及びアプリケーション」→「サイト及びアプリケーションの追加」

App名:WakeUpOnLAN
Android パッケージURL:http://www.mydmain/WakeUpOnLAN.apk
ジャンル:ツール
Appの説明:遠隔起動アプリケーション

「次へ」で一覧に追加されたアプリにマウスを移動したときに現れる「設定を管理」

画面に「パブリッシャーID」が表示される。


さらに↓

続きを読む "アプリにグーグル広告を配置" »

2012年12月05日

アプリをインターネットブラウザでダウンロードしてインストール

ここまでのアンドロイドアプリの実行手順
●eclipceからアンドロイドエミュレータへ転送・実行。
●eclipceからUSB接続したアンドロイド実機へ転送・実行。

さらに実際のアプリ配布のようにネットワークからインストールする方法 ↓

続きを読む "アプリをインターネットブラウザでダウンロードしてインストール" »

2012年12月04日

実機画面のキャプチャー

エクリプスでUSB接続されたアンドロイド実機画面をキャプチャーしてパソコンに保存。
eclipce → Open Perspective → DDMS

カメラアイコン → Device Screen Capture

Copy → ビットマップエディタ や ワード・エクセル で貼り付け

2012年12月03日

ミニUSB ならぬ マイクロUSB 220円から


Amazonベーシック USB 2.0 (A) オス - Micro B ケーブル (1.8m)

くれぐれも間違って充電専用ケーブルを選択しないこと。
Micro USBケーブルの違い(通信/充電/ホスト)
http://andoroseikatsu.blog115.fc2.com/blog-entry-83.html

2012年12月02日

開発したアプリを実機でデバッグ・実行

アンドロイド開発環境
●Intel Pentium4 2.6GHz 1GB
10年落ちPCのエミュレータではかなりストレス。
●Intel Core i5 2.50GHz 4GB
比較的最近のPCでも大きなアプリは厳しいかもしれない。
そこで実機でのデバッグ・実行。

新品中華パッドよりも安価に中古の型落ちスマートフォンを入手。
 ▼
実機 の設定変更
 ▼
USBケーブルで接続するPCにドライバをインストール
 ▼
eclipse の設定変更
詳細は↓

続きを読む "開発したアプリを実機でデバッグ・実行" »

2012年11月07日

プロジェクトをインポート

工学社Android4.0演習
HelloWorldが動作するところまで確認できたところで、WEBや書籍で紹介されているアプリを試す。
http://www.kohgakusha.co.jp/support/android4_en/index.html
に公開されているサンプル[Sample.zip]のHTTP通信。
プロジェクトのインポート手順は↓

続きを読む "プロジェクトをインポート" »

2012年11月06日

アンドロイドでHelloWorld

とりあえずお決まりの HelloWorld を表示するandroidアプリを作成。
なんとプロジェクトを作るだけで勝手にHello worldが埋め込まれたソースが生成される。
詳細は ↓

続きを読む "アンドロイドでHelloWorld" »

2012年11月05日

アンドロイド開発環境構築

Windows XP pro 32bit へアンドロイド開発環境を構築

●java JRE,JDK インストール
 ↓
●Eclipse インストール
 ↓
●Android SDK インストール
 ↓
●Android Development Tools(ADT)インストール
 ↓
●Androidエミュレータを設定

これで、コーディング・コンパイル・エミュレーションできる環境が整う。
詳細は↓

続きを読む "アンドロイド開発環境構築" »

About Android

ブログ「remix」のカテゴリ「Android」に投稿されたすべてのエントリーのアーカイブのページです。過去のものから新しいものへ順番に並んでいます。

次のカテゴリはdatabaseです。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type 3.34