- 1. Androidエミュレータ(Windows)で使用するシステムイメージを差し替える・/systemの内容を変更する
- 2. Flutterで画像、カスタムフォントを使用する方法
- 3. Dagger Hilt触ってみた
- 4. Androidのウィジェットでできること、できないこと
- 5. リップルカラーの変更方法
- 6. FlutterでWeb,Android,iOSの3プラットフォームから同じコードでS3に写真をアップロードする
- 7. フォークしたリポジトリをライブラリとして取り込む
- 8. 別途アプリをインストールせずに、決まった時間にAndroid端末でアプリを起動する
- 9. パッケージ名からアプリ名(AndroidManifestのlabel属性のもの)を取得する
- 10. 【Android】DataBindingのvariableはcamelCaseで書くのが無難
- 11. 【Kotlin】Firebase + CameraX でリアルタイム文字認識
- 12. CameraXとOpenCVを使った画像処理Androidアプリのひな形
- 13. 日本Androidの会浜松支部 第108回ミーティングでFlutter勉強会やるのでWindows10にFlutterの開発環境を整えた話
- 14. Android画面各部の名称
- 15. Android + ViewPager2で特定のページ(ポジション)を最初に表示する
- 16. JKが接触確認アプリ「Cocoa」の開発に貢献した話。〜1日でXamarinを学びアプリ改善〜
- 17. React Nativeで画面回転時のレイアウト崩れに対応したら、KeyboardAvoidingViewが効かなくなった
- 18. 【Android9.0 Pie Java】チャットアプリで横スワイプ→ダイアログ表示→削除を実装する
- 19. [Android] Waiting For Debuggerが終わらない時の打開策?
- 20. MacでゼロからのFlutter環境構築
Androidエミュレータ(Windows)で使用するシステムイメージを差し替える・/systemの内容を変更する
# はじめに
Android Studioでアプリ開発するにあたり、SDK Managerでエミュレータとシステムイメージを取得して使用していましたが
・自前でAOSPからビルドしたシステムイメージを使う
・エミュレータで/system以下に変更を加える(アプリをpushするなど)
という必要があり、それで行き詰まった部分があるので、解決した方法と合わせて記録しておきます。## わたしの環境
– Android Studio/エミュレータ動作環境
– Windows 10 Home 64bit
– CPU: Core i7-8700 @ 3.20GHz
– RAM: 16GB
– Android Studio: 3.6.3
– Android Emulator: 30.0.12– AOSPビルド環境(仮想PC)
– Oracle VM VirtualBox 6.0
– Ubuntu 16.04 LTS
– AOSPソースコード: Android Pie android-9.0.0_r42# 自前でビルドしたシステムイメージを使いたい
## 困ったこと
エ
Flutterで画像、カスタムフォントを使用する方法
今回はFlutterアプリで画像とカスタムフォントを使用する方法を記述します。
## プロジェクトに画像とフォントを追加する
1. プロジェクト直下に`assets`フォルダを作成し、その直下に`images`と`fonts`フォルダを作成する。
2. 使用したい画像とフォントを各フォルダに格納する。## `pubspec.yaml`にパスを記述する
Flutterで画像やフォントを使用するには、`pubspec.yaml`にパスを記述する必要があります。“`pubspec.yaml
flutter:# The following line ensures that the Material Icons font is
# i
Dagger Hilt触ってみた
# はじめに
巷で噂のDagger Hiltをようやく触ってみました。[Codelab](https://codelabs.developers.google.com/codelabs/android-dagger-to-hilt/#0)を一通り終わったので、実際に[過去の記事](https://qiita.com/karass/items/883353b80ac84becf44c)でDaggerを使ってDIしたのですがそれをHiltに移行した手順をまとめます。# Gradle
“`build.gradle
// build.gradle (Project)
ext.hilt_version = ‘2.28-alpha’
dependencies {
classpath “com.google.dagger:hilt-android-gradle-plugin:$hilt_version”
}“`
“`build.gradle
// build.gradle (App)
// Dagger_hilt
Androidのウィジェットでできること、できないこと
iOS 14でホーム画面ウィジェットが使えるようになるそうです。Androidでは昔からウィジェットがありましたが、このタイミングでAndroidのウィジェットにももう一度注目が集まりそうな予感がします。しかし、ウィジェットはかなり制約が大きく、何ができて何ができないのかをエンジニア以外に理解してもらうのは難しかったりします。
ここでは、どうやって作るかという話ではなく、Android開発に詳しくない人や非エンジニア向けに、ウィジェットってどういうものなのか、何ができて何ができないのかをざっくり理解していただけるような内容で書いてみようと思います。## ウィジェットの制約の考え方
あるアプリのウィジェットを表示しているのは、そのアプリ自身ではなく、ホームアプリ等のウィジェットが設置されているアプリです。ウィジェットを提供するアプリは、こういう内容を表示してくださいとお願いすることしかできません。
まずはここを押さえておいてもらえば以降の制約についても理解しやすいかもしれません。実際に表示しているのは別のアプリなので、ウィジェットが表示されている間、アプリのプロセスは生きている
リップルカラーの変更方法
# はじめに
Buttonのリップルカラーを変更したいと思ったが、思い通りの色に変更することができなかった。 ここではButton(Material)のリップルカラーの変更方法の手順をまとめます。# 目標
以下のようなOutlineButtonを作成します。
## Layout
“`xml
FlutterでWeb,Android,iOSの3プラットフォームから同じコードでS3に写真をアップロードする
##概要
6月にWeb向けのImagePickerが出ていたので、ネイティブアプリとブラウザアプリを同じソースコードでビルドして、どのデバイスでもファイルアップロード出来るのかというのを試しました。
AndroidとiOSに加えてWebでもPickerが同じ処理で使えるようになったのは結構画期的だなと思ってのメモです。内容はクライアント側に重点を置いています。### 1. パッケージをインポートする。
pubspec.yamlにimage_pickerとimage_picker_for_web、amazon_cognito_identity_dart_2を追加する。
私が試したバージョンは以下です。“`
image_picker: ^0.6.7
image_picker_for_web: ^0.1.0+1
amazon_cognito_identity_dart_2: ^0.1.14
“`### 2. 画像取得処理を書く。thenを使用してますが、awaitでも問題ありません。
“`
import ‘package:image_picker/image_picker
フォークしたリポジトリをライブラリとして取り込む
ケースとしてはあまり多くないとおもいますが、掲題のとおりフォークしたライブラリをプロジェクトに取り込む方法について記載します
経緯としては、以下のYahooのライブラリを改造して使いたかったためです。
https://github.com/yahoojapan/AppFeedback-android通常なら類似のライブラリを探すのでしょうけど、今回は見当たらなかったためForkすることにしてみました。
1. Forkが完了すると以下な感じにリダイレクトします
https://github.com/harutamasato/AppFeedback-android2. sdkディレクトリ内でいじりたい箇所をいじって、masterにコミットしていきます。
“`
$ git commit -a -m “Message”
$ git push origin master
“`3. 使える状態になったらタグをきってPushします。
2020/6/28現在、オリジナルの最新が1.0.5なのでそれ以上のものを設定します。
今回は1.0.6とします。正常にPushされると、以下の
別途アプリをインストールせずに、決まった時間にAndroid端末でアプリを起動する
# きっかけ
日付や時間帯を指定して、起動したいアプリがあります。たとえばmineoアプリなど、毎日一回アプリを起動させて、起動ボーナスの回収と「ゆずるね」の宣言を行いたい場合などがあります。
そういうときのために[AutomateIt](https://play.google.com/store/apps/details?id=AutomateItPro.mainPackage&hl=ja)などのアプリもあるのですが、なにぶんAutomateItは多機能な分端末にかける負荷も大きく、普段使いするような端末にはあまり入れたくありません。
そういうときには、Join by Joaoapps(以下Join)のAPIを使う という方法があります。これを使うとAPI経由で特定のURLをブラウザに開かせたり、アプリを起動させたりといったことがURLを叩くだけで実現できます。
## やりかた
まず自分のAPI KEYとデバイスIDを確認するため、[Join On The Web](https://joinjoaomgcd.appspot.com)を開きます。
![image.png](
パッケージ名からアプリ名(AndroidManifestのlabel属性のもの)を取得する
暗黙的Intentで選択したアプリ名を使いたくて、パッケージ名からアプリ名を取得する必要があったため備忘録含め以下に展開します。
[こちらのgetApplicationLabel](https://developer.android.com/reference/android/content/pm/PackageManager#getApplicationLabel(android.content.pm.ApplicationInfo))を使うと以下のようになります。
※[loadLabelでも可](https://developer.android.com/reference/android/content/pm/PackageItemInfo#loadLabel(android.content.pm.PackageManager))なお、パッケージ名はいくつか取得方法があると思いますがいつかよく使う、URLをブラウザで開くケースを載せておきます。
“`Case1.kt
override fun onCreate(savedInstanceState: Bundle?) {
【Android】DataBindingのvariableはcamelCaseで書くのが無難
“`xml
“`
より、“`xml
“`
のが困らないと思うっすという話。プチハマったので。## 具体例
「被``ファイルでsnake_caseのvariableを使おうとしたらアクセスできなかった」 #### 書いてみるxml
“`child.xml
【Kotlin】Firebase + CameraX でリアルタイム文字認識
Firebase ML Kit + CameraX でリアルタイム文字認識してBottomSheetに表示します。
#デモ
完成形はこんな感じです。
CameraX+MLkitでリアルタイム文字認識 pic.twitter.com/rjxxYrfIb4
— marica (@tama_Ud) June 28, 2020
#おおまかな処理の流れ
カメラ起動
↓
MLKitでリアルタイム文字認識
↓
Bot
CameraXとOpenCVを使った画像処理Androidアプリのひな形
# はじめに
Androidでカメラ画像を入力して、何らかの画像処理を行うためのサンプルプロジェクトです。以前別の記事( [Androidで OpenCV 4を使う方法とカメラライブビューの表示](https://qiita.com/iwatake2222/items/2642669419fdaa20a8a6) )で、カメラ読み込みもOpenCVを使った方法を記載しましたが、最新のAndroid SDKだと使えないようでした。
Camera APIが廃止され、Camera2 APIを使うことが推奨されていましたが非常に使いづらいです。より簡単にAndroid上でカメラを触れるCameraXというものが存在しました。今回はこれを使ってみます。
CameraXは使い方が簡単で、チュートリアルも充実しています (https://developer.android.com/training/camerax ) 。ネット上のほとんどのサンプルがKotolin向けだったので、ここではJavaで書いてみようと思います。今回は、入力画像と前フレームの画像との差分を計算して、変化したところが
日本Androidの会浜松支部 第108回ミーティングでFlutter勉強会やるのでWindows10にFlutterの開発環境を整えた話
[日本Androidの会浜松支部 第108回ミーティング](https://jaghama.connpass.com/event/180670/)
でFlutter入門が開催されるので、Flutterの環境を整える。
こういったハンズオン系のイベントの場合、**あらかじめ環境を用意しておくと、セットアップだけで終わってしまって、本来イベントで学ぶべきことを学ばないで終わってしまう**というもったいない事態に陥ることが少ないです。
(これホント大事!)
環境構築で分からない場合は、事前に知ってる人に質問しましょう!このドキュメントは前提として、開発経験があって、環境変数の設定とかできる人向け。
(初心者向けじゃないです)あらかじめ、Androidの開発環境は整っています。
Android Studioの環境構築は他の人の記事を探してください。やったことは以下のこと
– Flutterのダウンロード([公式サイト](https://flutter.dev/docs/get-started/install/windows)からダウンロード)
– Flutterのbinディレクト
Android画面各部の名称
正しい呼び方を知らなかったので画面の各部の名称をまとめました。
出典は主に
[Androidデベロッパー|ユーザーインターフェースおよびナビゲーション](https://developer.android.com/guide/topics/ui)
[Material Design](https://material.io/design)
です。# システムバー
通知の表示や、デバイスステータスの通信、デバイスの操作を行うための専用の画面領域。
システムバーはステータスバーとナビゲーションバーで構成される。
![alt](https://developer.android.com/images/training/system-ui.png?hl=ja)## 1. ステータスバー
通知アイコンやシステムアイコンが表示される。## 2. ナビゲーションバー
左から戻る、ホーム、タスクボタンが配置されている。
またAndroid9から2ボタンナビゲーション、Android10からジェスチャーナビゲーションが追加されたため3つボタンが表示されているとは限らない。# トップアプリ
Android + ViewPager2で特定のページ(ポジション)を最初に表示する
## 概要
ViewPager2を使ってカレンダーの実装をしていたのですが、みなさんもご存知だと思うのですがカレンダーは先の月だけではなく前の月もスクロールしたら見れますよね?
それを実装するためにはViewPagerで真ん中辺りのページを開く必要があったのでその方法を記載します。## 試してだめだったこと
ViewPager2について調べてみると、currentItemなるものがあり、そちらが現在のItem(ページ)を示すみたいだったので、そこの値をかえればいいのでは?と思い
“`MainActivity.kt
private lateinit var binding: ActivityMainBindingoverride fun onCreate(savedInstanceState: Bundle?) {
binding = DataBindingUtil.setContentView(this, R.layout.activity_main)
super.onCreate(savedInstanceState)
/
JKが接触確認アプリ「Cocoa」の開発に貢献した話。〜1日でXamarinを学びアプリ改善〜
こんにちは、あんはるです。
接触確認アプリ「Cocoa」の開発に貢献したこと、そして、簡単に開発に参加する方法を紹介します。みなさんに接触確認アプリ「Cocoa」の開発の参加は簡単にできるということを伝えたくて書きました
実際自分で改善してみた経験も書いています
cocoaが使いにくい!と思ったら是非この記事を読んで改善してみるといいと思います?
是非読んでみてください?♂️https://t.co/3G1UEL9Rb2— あんはる@アプリ作れるJK (@_anharu) June 26, 2020