edo1z blog

プログラミングなどに関するブログです

Android

Flutterでカメラ使ってみる(Android)

色んなプラグインが詰まってるやつを見つけました。先程使っていたgoogle mapのも入っている。 github.com カメラのプラグインはこれです。 plugins/packages/camera at master · flutter/plugins · GitHub つくったもの github.com 事前準備 android/app/bu…

Flutterで地図(google map)を表示してみる

Ubuntu18.04でAndroid Studio使っていて、Androidエミュレータを使っています。 下記を参考にやってみました。 qiita.com google_maps_flutterというのを使っています。 pub.dev 作ったもの github.com 最初にでたエラー 最初は下記のようなエラーが出て地図…

Flutterでスプラッシュ・スクリーンを表示してみる(Android)

ここに書いてあるとおりにAndroid向けの設定をしたらできた。 qiita.com github.com

Flutterでアプリつくってみる

Flutterでアプリつくってみます。ボタン押したらこんにちはというアプリにしたいと思いまっす。 Flutterはこちらにあります。 flutter.dev インストール ワイはUbuntu18.04を使ってます。ここに書いてあるとおりにやってインストールしました。Android SDKも…

Ubuntu18.04でQuasar+Cordova+Androidを動かす

$ quasar dev -m cordova -T android ... Could not find an installed version of Gradle either in Android Studio, or on your system to install the gradle wrapper. Please include gradle in your path, or install Android Studio ... Android Studi…

Android Instant Apps

GoogleのAndroid Instant Appsの紹介ページ 開発者向けのInstant Appsに対応するための注意事項 通常のアプリをちょっと修正して、Instant Appsに対応するようにすればいいらしい。小さいアプリなら1日で対応できるレベルらしい。 SDKはまだ出てないらしい。

Android - RecyclerView

Gradleに追加する compile 'com.android.support:recyclerview-v7:25.1.0' RecyclerViewを設置する <android.support.v7.widget.RecyclerView android:id="@+id/rview" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentTop="true" android:layout_alignParentStart="true" /> 1…</android.support.v7.widget.recyclerview>

Android - ViewHolder

ListViewの効率化をViewHolderでします。 adapter使うときに、Viewが行ごとに変わりますが、かといって毎回findViewByIdやると効率が悪いので、viewHolderを使うといいらしいです。viewHolderは、各行用のviewの要素を覚えておいてくれるやつでっす。 ViewHo…

Android - ListView

すごくシンプルなListViewの実装 adapterにセットする、個別行用のレイアウトファイルが必要ですが、ANDROIDがデフォルトで用意している、android.R.layout.simple_list_item_1を使っている。ただTextViewが1つ入っているだけのもの。 activity_main.xml

Android - ProgressBar

回転するやつと横棒があるっぽい。 下記4つがある。 progressBar(Large) ProgressBar ProgressBar(Small) ProgressBar(Horizontal) styleを変えると色々なデザインにできる。Android5以上だと、デフォルトで、Widget.Material.Lightになるっぽい。かっこい…

Android - Firebase Auth ログアウト

FirebaseAuth auth = FirebaseAuth.getInstance(); auth.signOut(); public class MainActivity extends AppCompatActivity{ private static final String TAG = "MainActivity"; private FirebaseAuth auth; private FirebaseUser user; private String nam…

Android - オプションメニュー

オプションメニューを配置 res/menu/main_menu.xml <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/sign_out_menu" android:title="@string/sign_out" app:showAsAction="never"/> </menu> M…

Android - Firebase Auth ログインチェック

FirebaseAuthのインスタンスを取得して、getCurrentUser()でログイン中ユーザを取得できる。nullだったら未ログイン状態。 public class MainActivity extends AppCompatActivity{ private FirebaseAuth auth; private FirebaseUser user; private String na…

Android - SharedPreference

参考: 基本的なSharedPreferencesの使い方 SharedPreferencesの使い方(基礎編) サンプルコード public class MainActivity extends AppCompatActivity{ private SharedPreferences data; private SharedPreferences.Editor editor; private Button btn_up, …

Android - Firebaseでログイン機能実装

Firebaseを使ってログイン機能を作ってみます。 参考:Firebase Authentication サンプルアプリがあります。サンプルアプリは、パッケージ名を変更するのが結構大変だったので、アプリ登録でサンプルアプリと同名のパッケージ名で登録すると簡単に利用できま…

Android - Retrofit

Retrofitも使ってみる。なんか一番人気がありそう。REST APIに対して使いやすい感じっぽい。 設定 build.gradleに下記を設定する。 compile 'com.squareup.retrofit2:retrofit:2.1.0' compile 'com.squareup.retrofit2:converter-gson:2.1.0' 使い方 参考: …

Android - ライブラリの使い方

socketでインターネット接続すると、毎回AsyncTaskとか使わなくてはいけなくてめんどくさいので、ライブラリを使うのが一般的らしい。 参考:色んなAndroidアプリが使っているオープンソースライブラリを調べた おすすめライブラリぽいやつ Retrofit Android…

Android - socket

パーミッション設定 インターネット接続する場合、AndroidManifest.xmlにパーミッション設定を書く必要がある。 <uses-permission android:name="android.permission.INTERNET"/> インターネット接続をActivityのonCreateとかで使うとエラーになる。UIスレッドで使ってはいけない。別のスレッドで使う。AsyncTaskのdoInBack</uses-permission>…

Android - AsyncTask

参考:AsyncTask 参考:AsyncTaskを使った非同期処理のきほん AsyncTask<Params, Progress, Result> と書いてある。doInBackgroundメソッドの引数の型, onProgressUpdateメソッドの引数の型, onPostExecuteメソッドの戻り値の型らしい。 AsyncTaskクラスを継承したクラスを作って、非同</params,>…

Windows10でJavaのkeytoolを使う

FirebaseでAndroidのアプリを登録するときに、デバッグ用の署名証明書を登録するように言われます。Javaのkeytoolというツールを使って作成することができます。使い方は、Javaのkeytool.exeが入ってるフォルダに移動して、コマンドプロンプトとかでkeytool…

CordovaでFirebase Cloud Messaging(FCM)を使ってプッシュ通知(Android)

cordovaでAndroidのプッシュ通知をします。 GCMを使ってプッシュ通知する方法が、Firebaseを使う仕様に変更されています。FirebaseのFirebase Cloud Messaging(FCM)です。cordova-plugin-fcmというプラグインを利用します。 まずはFirebase Notificationを使…

cordova + onsen ui + reactの開発環境

cordova + onsen ui + reactの開発環境を作成してみます。cordovaのテンプレートにして、メンテしていければと思います。環境は、windows10、npm3.10.8です。エディタは、visual studio code1.6.1を使ってます。 プロジェクトを作る npmはインストール済みで…

Android - Google Static Maps APIで地図画像を取得して表示する

最初にgoogle static map apiを有効にし、APIキーを取得・設定する必要がある。 https://console.developers.google.com 下記のように表示したい地図情報をパラメタに含めたURLを作成し、地図画像を取得する。 下記コードのmContextは、コンストラクタで、引…

Androidの開発環境つくる

Androidの開発環境は全て奇麗に削除していたので復活させます。そのメモ。 PCはMacで、Eclipse使います。 参考:MacでAndroid開発環境を手早く整える まず、Android SDKをダウンロードします。 おおAndroidSDKの中にEclipseが入ってるらしい。それを使うか。…

cakePHP Android��セッションが使えない

Androidでセッションがつかえないよー。しくしく。 Cookieはつかえるよー。 http://cakephp.jp/modules/newbb/viewtopic.php?topic_id=2370&forum=3に書いてある、 Configure::write('Security.level', 'low');をcore.phpに追加してみたけど解決できない。ca…

Androidアプリ - Callcenter Calculator コールセンター計算機 をつくりました。

Titaniumでコールセンター計算機をつくりました。 Callcenter Calculator - コールセンター計算機です。入電数や処理時間などを入力すると、必要席数やコストを算出します。必要席数はアーランC式によって計算します。 月間入電数、平均通話時間、平均後処理…

Titanium とAppcelerator Cloud Services(BaaS)

ついに腰を据えてとりあえずTitaniumをやることに決めました。iPhoneでもAndroidでもアプリをJavascriptベースで作れるもので、Phonegapとかよりも速いらしい。Appcelerator Cloud Services(ACS)というBaasを自社で持っているため、Titaniumとの連動性が高い…

Androidゲーム『Dodge Mouse』つくりました!

Androidゲーム『Dodge Mouse』をつくりました!第一弾目です。シューティングゲームの敵の弾を避ける要領で、敵をよけつづけるシンプルなゲームです。Pankiaをつかってスコア共有できるようになっていて、スコアはtwitterでつぶやけるようになってます。Pank…

Android 開発 マルチ画面対応の研究

Androidは多種多様な端末があり、それらはそれぞれ画面サイズやDPIといったものが全然違います。マルチ画面に対応する為のルールや手法について研究します。 研究の為の簡単なプロジェクトを作成しましました。DpiTestActivityとDpiTestViewの2つのクラスか…

Java LinkedListのテスト(Android Game 敵と弾の当たり判定〜削除)

Androidでゲームを作っているのですが、敵も沢山いて、プレイヤーが撃った弾も沢山ある場合、敵毎に全ての弾と当たり判定を実施する必要があります。敵が弾に当たっている場合は、敵と当たっている弾を削除します。簡単に出来ると思っていたのですが、今これ…