Android関連のことを調べてみた2020年05月31日

Android関連のことを調べてみた2020年05月31日
目次

2020年6月から11月までに行われる開発者向け大規模カンファレンス・サミットをまとめみた!

こんにちは(๑╹ω╹๑ )
毎年夏場前後で開発者向けの大規模なカンファレンスやサミットが開催されていますよね!!

今年は例年と違いオンラインでの参加が可能なイベントが増えております!
※この記事で紹介するイベントはオンラインでの視聴が可能なイベントのみです

このような記事を書き残そうと思ったのは、
個人的に情報の整理が追いついていなかったためです笑

※日付は現地時間です

|主催|イベント名|日程|備考|
|—|—|—|—|
|Microsoft|[Cloud Summit](https://resources.office.com/en-in-landing-IN-M365DEP-WBNR-FY20-06Jun-01-Microsoft-Cloud-Summit-4935.html)|6月1日〜6月5日|Azure、ブロックチェーン、AI、Dynamics 365、Power Platform|
|Cisco|[Cisco Live](https://www.ciscolive.com/us.html)|6月2日〜6月3日||
|Android|~~[Andr

元記事を表示

Coursierで特定のmaven artifactの依存関係を確認する

Androidでの開発やJavaなどのJVM言語での開発で、あれ、このライブラリって何に依存しているんだっけ?って思うことよくありますよね?
皆さんはどのように確認しているでしょうか?
https://mvnrepository.com/ などのサイトを見たり、 `./gradlew dependencies`で確認するなどさまざまだと思います。

今日はScalaで書かれたCoursierというCLIツールが便利だったので紹介します。
https://get-coursier.io/

# 使い方
ターミナル上で `coursier resolve maven_artifact`という感じで確認できます

“`
$ coursier resolve io.circe:circe-core_2.12:0.10.0
io.circe:circe-core_2.12:0.10.0:default
io.circe:circe-numbers_2.12:0.10.0:default
org.scala-lang:scala-library:2.12.6:default
org.scala-

元記事を表示

7年前DynabookタブにAndroidx86入れてゲーム(続き)

![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F543063%2F4c36d16e-f069-6fad-d7fd-6e567e454d70.jpeg?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=afb46a3d39eff27935bff95fef3e5343)

前回、「7年前のWinタブにAndroidx86を入れてゲームをする」記事を書いた。

### 7年前 Corei5 WinタブにAndroidx86入れてゲームとか
https://qiita.com/ksmndevelop/items/764307de2e0342137a47

一ヶ月程度経ってしまったが、その後のことについて追記しておく。

# ゲーム動作の様子動画
とりあえず、きらファンとプリコネをプレイした動画を上げた。

Dynabook VT712 Android x86 きらファンテスト – Yo

元記事を表示

Dagger-HiltはViewModelのFactoryをどのように差し込むのか

AAkiraさんのブログを見てViewModelのInjectがすごいと思って不思議に思って仕組みを調べてみました。
https://aakira.app/blog/2020/05/dagger-hilt/

まだ正式にリリースされているわけではないので後々仕組みが変わる可能性があります。
このブログで紹介されているサンプルコードをベースに見ていきます。 (理解しやすいサンプルを公開していただき、本当にありがとうございます :pray: )
https://github.com/AAkira/dagger-hilt-example

以下のように書いておくことで、VoiewModelをInjectできるそうです。

“`kotlin
class MainViewModel @ViewModelInject constructor(
private val repository: SampleRepository,
@Assisted private val savedState: SavedStateHandle
) : ViewModel() {
}
“`

元記事を表示

UnityでGoogle Play Game Services導入する際、あらゆる罠にハマった話

UnityプロジェクトにGoogle Play Game Servicesを導入した際、いろいろ罠にはまって24時間くらい無駄にしたので、ここに何が発生してどうやって解決したかメモしておきます。

# 私の開発環境

* Unity 2018.4.10f1
* Google Play Game plugin for Unity v 0.10.09
* Android SDK level 28

macで作業しています。

# 動かしたいコード

[Google Play Game Servicesプラグイン](https://github.com/playgameservices/play-games-plugin-for-unity)を使って、プロジェクトにクラウドセーブ機能を導入しようとしています。
動かしたいコードは、サービスの初期化とプレイヤの認証です。

“`C#
var conf = new PlayGamesClientConfiguration.Builder()
.EnableSavedGame()
.Build();
PlayGamesPlatfo

元記事を表示

FlutterアプリでonResume的なタイミングの処理をする

# 状況
カレンダー式表示のアプリを作成しています。「今日」が分かりやすいように、その日付のセルだけ背景色を変えています。
しかし、特にiOSで問題になるのですが、アプリをホームボタンでバックグラウンドに移動していて、もう一度アプリを立ち上げたときに、そのタイミングで日付が変わっていても「今日のセル」が移動してくれません。
Androidでいう、”onResume”のタイミングで処理ができれば解決できると思い、調査しました。

# 環境など

|ツールなど|バージョンなど|
|:–|:–|
| MacBook Air Early2015|macOS Mojave 10.14.6|
|Android Studio |3.6.1|
|Java |1.8.0_131|
|Flutter|1.12.13+hotfix.9|
|Dart |2.7.2|
|Xcode |11.3.1|

# 解決策

`SystemChannels.lifecycle.setMessageHandler`を使います。
詳しくはこちら。
https://api.flutter.dev/flutter/servi

元記事を表示

Androidの密度修飾子(ldpi, mdpi, hdpi, xhdpi, xxhdpi, xxxhdpi)をコード上で判定する。

Androidの密度修飾子はDrawableリソースの場合、それぞれのフォルダを使うことで自動的に端末のDrawableリソースが使われます。
しかし、今の手持ちの密度修飾子は何なんだ?というときがあるので、コード上で判定してみたいと思います。

“`kotlin:MainActivity.kt

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val densityDpi = resources.displayMetrics.densityDpi
(findViewById(R.id.textView2) as TextView).text = densityDpi.toString()
if (0 < densityDpi && densityDpi <= DisplayMetri

元記事を表示

[Android]Shared Element Transition を試してみる

# はじめに
Shared Element Transition を利用すると Fragment 間で共有する View を指定することができ、次のように画面間でシームレスに View が移動したり拡大したりするようなアニメーションを実装できるらしい。Activity、Fragment どちらの画面遷移でも Shared Element Transition を利用できるらしいのだが、Single Activity で実装されることが最近は多いと思うので、Fragment を利用した画面遷移で Shared Element Transition を実装していこうかなと思います。

| Shared Element Transiton なし | Shared Element Transition あり |
| ——- | ——- |
| AndroidStudio 3.6.3を日本語化する

#はじめに
Android Studioを日本語化するところまで確認したいと思います。

#環境と前提条件
– windows10
– Android Studio 3.6.3(64bit)

Android Studioがインストールされていることが前提です。
インストール方法は[こちら](https://qiita.com/kepin/items/cccb27d5ba4857d46bb2)を参考にしてみてください。

#プラグインをダウンロードする

[こちら](https://mergedoc.osdn.jp/)からプラグインをダウンロードします。

リンクを開いたら、 Pleiades プラグイン・ダウンロードのwindowsボタンを押下します。
あと、7-zipで解凍云々と書かれていますね。公式に従い、インストールしていない場合は7-zipもインストールします。後ほど使います。
![2020-05-28 (34).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/645318/dfcd4194-b

元記事を表示

【入門】AndroidStudio Hello Worldをエミュレータ上に表示させる

#はじめに
AndroidStudioでプロジェクトをビルドして、HelloWorldをエミュレータ上に表示されるところまで確認したいと思います。AndroidStudioインストール後の動作確認として試してみます。

#環境と前提条件
– windows10(64bit)
– AndroidStudio 3.6.3
– AndroidStudio 日本語化済み
– API 29(Android 10.0)

インストール方法は[こちら](https://qiita.com/kepin/items/cccb27d5ba4857d46bb2)
日本語化は[こちら](https://qiita.com/kepin/items/213562dafea8c96e4fdf)
を参考にしてみてください。

#プロジェクト作成
まずはプロジェクトを作成します。

はじめに、AndroidStudioを起動します。
下記のようなウィンドウが開いたら新規AndroidStudioプロジェクトの開始を押下します。
![2020-05-29 (23).png](https://qiita-image-sto

元記事を表示

Kotlin, LiveData, coroutine なんかを使って初めてのAndroidアプリを作る(13)Firebase Cloud Firestore使ってみた編

[Firebaseの導入(Analytics/Crashlytics)](https://qiita.com/kasa_le/items/560775076c3b2f00fcf7)、[Firebaseでのユーザー認証](https://qiita.com/kasa_le/items/0ec2b993cd52041f393c)とやってきて、ようやくFirebaseのCloud Firestoreへの保存をやります。

# 今回の目標
Firebase Cloud Firestoreに簡単なデータを保存し、取得できる。
また、ユーザー認証と組み合わせてセキュリティルールを設定する。

# Firebase Cloud Firestore概要

https://firebase.google.com/docs/firestore?hl=ja

Cloudと付いているとおり、クラウドへの保存です。まあつまりサーバーにデータがありますよってことです。
で、SQLiteのようなテーブルに絡むがあってSQLでクエリー発行して・・・というSQLデータベースではなく、NoSQLと言われています。

デー

元記事を表示

AndroidStudio 3.6.3 インストール

#はじめに
AndroidStudio 3.6.3をインストールするところまで確認したいと思います。

#環境と前提条件
– windows10(64bit)
– メモリ:8GB

当初はメモリ4GBでAndroidStudioをいじっていましたが、エミュレーター起動時に厳しさを感じたのでメモリを増設して8GBにしました。故に、メモリは8GB以上がよろしいかと思います。

#AndroidStudioをダウンロードする
[こちら](https://developer.android.com/studio/install?hl=ja)のページを参考に進めていきます。

上記リンクを開いたら、赤枠のリンクを押下します。
![2020-05-29 (10).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/645318/0696ba26-df1a-31ab-9ff7-436f960e6679.png)

赤枠に対象のバージョンと対象OSが記載されています。今回はこちらで問題ありません。
そのまま、DOWNLOAD

元記事を表示

Layout Validation を使いこなせ

## Layout Validation とは
[Android Studio 4.0](https://developer.android.com/studio/releases/#4-0-0) から使えるようになった、様々な画面サイズやデバイスの構成におけるレイアウトを同時にプレビューするためのツールです。

画面サイズだけでなく、Dark Theme や色覚多様性、多言語、テキストサイズの変更までも確認することができます。

## 使い方
Android Studio 4.0 以降でレイアウトのファイルを開くと IDE に `Layout Validation` のボタンが表示されます。
![layout-validation-tab.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/126298/0f17855e-ee3b-41b9-286e-ceab35f14c5e.png)

### 様々な画面サイズの確認

左上のドロップダウンより `Pixel Devices` を選択することで様々

元記事を表示

KotlinでFragmentを使う(失敗)

#KotlinでFragmentを使う
KotlinでFragmentを使ってみます。失敗っていうのは結果だけで途中の段階は重要な部分もあります。

##前準備
Gsonを使いますのでbuild.gradle(app)に

“`build.gradle(app)
dependencies {
省略
implementation ‘com.google.code.gson:gson:2.8.6’
}
“`

gsonを追加します。 2.8.6の部分はバージョン番号です。

“`strings.xml


FragmentSample
保存
読込
String型

元記事を表示

AndroidStudioで様々なボタンの動作を確認

#AndroidStudioでボタンの動作を確認します
ボタンのクリックイベント、ボタンのチェック状態を確認するサンプルを作ってみます。

“`strings.xml


ButtonSample
うどん
そば
油揚げ
天ぷら
精算
お支払い

“`

うどん、そば屋さんで精算するアプリです。

“`activity_main.xml

元記事を表示

Android Studioへの画像リソースの追加が劇的に楽になってたので紹介します

## これまでのやり方
これ僕だけなのかもしれないのですが、今までは下記のようなサイズ別の画像を
![Screen Shot 2020-05-29 at 9.54.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/51328/321ff4aa-5a84-974b-5d4d-e559d72e8608.png)
下記のリソースフォルダへ一つ一つコピペしておりました。
![Screen Shot 2020-05-29 at 9.54.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/51328/b027868c-496f-7557-2cd0-6a3c62794773.png)
これが地味に面倒で、コピー対象には`ldpi`がなかったり、`v24`などがあったり、ちゃんと間違いのないコピペができたかを毎度チェックしていました。今回のように一つのリソースならまだしも、大きめの改修でリソースの数が多いと、この作業だけで結構気力を

元記事を表示

THETAプラグインでTensorFlow Liteのセグメンテーションをかける

#はじめに
リコーの[Yuuki_S](https://qiita.com/Yuuki_S)です。
弊社では[RICOH THETA](https://theta360.com/ja/)という全周囲360度撮れるカメラを出しています。
RICOH THETA VやTHETA Z1は、OSにAndroidを採用しており、Androidアプリを作る感覚でTHETAをカスタマイズすることもでき、そのカスタマイズ機能を「プラグイン」と呼んでいます。(詳細は本記事の末尾を参照)。
***
上述の通りTHETAは、カメラでありながらAndroid端末でもあるため、単体で撮影し機械学習の処理をかけて出力することが可能です。

以前、@KA-2さんが[THETAプラグインで連続フレームにTensorFlow Liteの物体認識をかける](https://qiita.com/KA-2/items/8c150975a998b0ad0f16)記事を掲載しましたが、今回はセマンティックセグメンテーションを実施する方法を記載しようと思います。

本記事を参考にすることで、セグメンテーション結果をライブプレビュー

元記事を表示

楽天モバイルで自社回線かパートナー(KDDI)回線のどちらに接続しているか判定する

# 前置き
筆者はデジモノガジェットが好きなので、楽天モバイルのRakuten UN-LIMITを契約しています。
ご存知の方も多いと思いますが、楽天モバイルは後発のキャリアですので自社の回線のエリアが狭く、パートナー(KDDI)回線でエリアを補強しています。
自社回線は容量無制限でパートナー(KDDI)回線は5GBという制限があるので、リアルタイムでどちらの回線に接続しているか把握できれば便利だと思い調査しました。

# 構成
| 名前 | バージョン |
| ————- | —————- |
| macOS | Catalina 10.15.4 |
| AndroidStudio | 3.6.3 |
| Kotlin | 1.3.72 |
| AVD(API) | 使用しません |
| 実機 | SH-RM11 |

# 判定ロジック
世間では電波の周波数(バンド)を取得して判断していることが多いと思います。

|

元記事を表示

【Flutter】Flutter製アプリをリリースしてみた、あとARとかも使ってみた話

## アプリ概要

ゴルフの[オリンピックゲーム](https://www.clunk.jp/golf-olympic-rules#1)の計算やボールとピンまでの距離のAR測定,1−18までの乱数を生成することができる、ゴルフ幹事向けのアプリです。

[App Store はこちら](https://apps.apple.com/jp/app/engolf/id1507668448?l=en)
[Google Play Store はこちら](https://play.google.com/store/apps/details?id=com.tetsukick.engolf)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/261934/67933117-6fcb-fd17-a67e-2c6f9c547368.png)

OTHERカテゴリの最新記事