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

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

Android – AsyncTaskの直列処理と並列処理の順番は保証されるのか??

Android開発において、AsyncTaskで直列処理と並列処理について、ほぼ同時に動いた時はどのような動きになるのか、実際に順番は保証されるのかわからなかったので、軽くコードを組んでみて確認してみましたので、メモとして残しておきたいと思います。

【参考URL】
[developer – AsyncTask](https://developer.android.com/reference/android/os/AsyncTask)
[Android – AsyncTaskの直列処理?並列処理?](https://qiita.com/marusa/items/e4c3b780f8926e6afc17)
[AsyncTaskの非同期処理はどのように実現しているのか](https://qiita.com/kazy/items/755e8d3e9e36f5730895)

#【試作1】タスク1:直列処理、タスク2:並列処理の場合
task1:execute()
task2:executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR)

“`
// 1

元記事を表示

【Android】Dagger2 ~基本編

# はじめに

[前回の記事(DI(依存性の注入)とは依存性を注入するということである、、?)](https://qiita.com/iTakahiro/items/353a11f6c9d2a927158d)では
DIとは何かについて記述しました。

今回は[Dagger2](https://dagger.dev)を導入してみたので記事にまとめます。
言語はKotlinです!

参考にしたチュートリアルは[こちら](https://www.raywenderlich.com/6583167-dagger-2-tutorial-for-android-advanced)です。

# 準備

まず、`build.gradle`にて`Dagger2`を導入します。
参照:[Dagger README.md](https://github.com/google/dagger#gradle)

“`gradle:build.gradle(app)

apply plugin: ‘kotlin-kapt’ // Kotlinでアノテーションを使用するために必要

dependencies {

元記事を表示

ViewModelProviders is deprecated になっているので、ViewModelProviderを使う

# ViewModelProviders が非推奨になっている

公[Android Developer 公式: ViewModel](https://developer.android.com/reference/android/arch/lifecycle/ViewModel?hl=ja)に書いてある
“ViewModelProviders.of(this).get(UserModel.class)“
をつかうと deprecated(非推奨) と表示されてしまう。
[公式のViewModelProviders](https://developer.android.com/reference/android/arch/lifecycle/ViewModelProviders)の説明によるともうメンテナンスがされないらしい。
今後は “ViewModelProvider“ を使わないといけないらしいので今回はその使い方を紹介する。

#用意するファイル

## Activity
プロジェクト開始時に通常通り生成されるもの
解説は省く

## ViewModel
MVVM

元記事を表示

Android、Chrome、CloudFrontの組み合わせでNo ‘Access-Control-Allow-Origin’が表示される

CloudFrontでリソースの配信を行っているとき、Android版のChromeだけでCORSのエラーが表示されることがある。

“`
No ‘Access-Control-Allow-Origin’ header is present on the requested resource
“`

CloudFrontにおけるCORSの設定は [CloudFront からの「No Access-Control-Allow-Origin」を解決する](https://aws.amazon.com/jp/premiumsupport/knowledge-center/no-access-control-allow-origin-error/) に書いてある通りなのだが、この設定を行っていてもエラーが起きることがある。

[Cross-origin request from cache failing after regular request is cached.](https://bugs.chromium.org/p/chromium/issues/detail?id=40909

元記事を表示

Jetpack Composeの公式サンプル JetNewsのFavoriteボタンを押した時の流れ

現在Jetpack Composeは絶賛開発中ですが、以下で新しいバージョンを使ったサンプルアプリがあります。そのサンプルの中で、いいねボタンが存在します。これがどうやって動くのかを見ていきます。
https://github.com/android/compose-samples/tree/master/JetNews
![toggle.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/27388/f86c1333-68c1-5d62-522f-21dcee92e0db.gif)
まだbeta版でもないので、きっと変わっていくとは思います。
0.1.0-dev09での情報です。

## JetNewsのコードを読んでいく。

まずこの行はPostCardSimpleのようで、以下のようにプレビューされています
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/27388/37a34698-96dd-a02e-8

元記事を表示

Android初学者用まとめ

はじめてAndroid開発を行って学んだことをまとめました。
最初は、[はじめてのAndroidプログラミング 第4版 | 金田 浩明 |本 | 通販 | Amazon](https://www.amazon.co.jp/dp/4815601143/ref=cm_sw_r_tw_dp_U_x_ejxQEb7Q0AMYJ)を読むのがすごくお勧めです。
数時間ですらすら読めてAndroid開発の特徴をつかめました。

# アーキテクチャ
## Androidのアーキテクチャを考える時
これが丁寧で分かりやすい。
[Androidアーキテクチャことはじめ ― 選定する意味と、MVP、Clean Architecture、MVVM、Fluxの特徴を理解する – エンジニアHub|若手Webエンジニアのキャリアを考える!](https://employment.en-japan.com/engineerhub/entry/2018/01/17/110000?amp=1)

公式のアーキテクチャガイド
[アプリのアーキテクチャ ガイド  |  Android デベロッパー  |  Andro

元記事を表示

アプリ未経験の大学生が1ヶ月かけてReactNative(Expo)でiOS/Android対応のアプリを作った話

先日、「ワセフリ」というアプリをリリースしました。開発期間は約1ヶ月。ReactNativeを使って、iOS/Android両対応しています。

先日、学生が教科書などを交換や売買できるようなフリマアプリ、「ワセフリ」をリリースしました!

開発に着手したのが2020年の3月19日。正式にリリースしたのが4/19日ということで、**まあ大体4週間かかったかな、という感じです。**

言い訳がましいのですが、平日はほぼフルコミットでエンジニアのインターンとして働いてい

元記事を表示

AndroidのViewPagerを下タブで切り替え

下タブでのViewPagerの切り替えはよく実装するレイアウトのひとつです。
ということで、自分がすぐ思い出せるようにまとめておきます。

`targetSdkVersion 29` で確認しています。

# 下タブに表示するメニューを作成

`app/res/menu/navigation.xml` を作成し、下記のように内容を修正します。

コード内の `android:id` は任意のidを指定可能です。
`android:icon` には下タブに表示する項目のアイコン、 `android:title` には、下タブに表示する項目のタイトルを指定します。
今回は例として、 `home` と `account` の2つの項目を下タブに表示します。

“`xml:navigation.xml

眺めて覚える C# Xamarin Forms(7) 画面遷移

##Android用IoT Buttonの制作
コロナアイコンをダウンロードします。[**武漢病毒**](https://freeicons.io)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/274715/0d76ed45-a5d4-7344-be26-df269030c94e.png)
これらのアイコンをボタン化します。
ファイル名を付け替えます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/274715/6cafbd57-3351-c701-c58f-7c5be35d352d.png)

#新しいプロジェクトを作成します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/274715/405a1eda-cc8f-7b64-2c9d-12e777584eeb.png)
#プロジェクトを

元記事を表示

7年前 Corei5 WinタブにAndroidx86入れてゲームとか

Android-x86が流行り始めた頃、一時期ハマって自作PC等に導入していた。しかし、あまり情報がなかったため起動してブラウジング程度でやめてしまった。

最近、ふとAndroid-x86を調べるとゲーム(デレステ、ミリシタetc)を上手く動作させている方がいるようで、今回このタブレットがワケアリで手に入ったため導入することにした。

**あくまでも個人的な動作メモなため、各端末での動作保証は確実ではないことを承知の上参考にしていただきたい。**

## Dynabook VT712/H スペック

![vt712.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/543063/fba9ae66-99bc-bf52-3619-cf47545a5d2e.png)

Dynabookのサイト
[企業向けタブレット VT712 トップページ – Dynabook](http://dynabook.com/pc/catalog/tablet_b/130226vt712/index_j.htm)

**概要*

元記事を表示

termuxにmongodbをインストールする

2020/04/28現在、まだ公式にサポートはされていないらしい。

今の所この方法がいいらしい。

https://github.com/termux/termux-packages/issues/249#issuecomment-584677975

元記事を表示

[Android]Epoxy のサンプルと解説 (CustomView から作成)

# はじめに

RecyclerView を使う際には Adapter などに独自で処理を実装する必要があり、ここが RecyelerView を利用する上でかなり面倒な実装だったりします。 Epoxy はこの面倒な処理を実装してくれるライブラリらしいです。Epoxy のサンプルを作成してどんなことができるのかざっくりと解説していきたいと思います。

# 準備する

Epoxy を利用できるようにセットアップを進めます。ライブラリとして epoxy、 epoxy-databinding, epoxy-processor を追加します。databinding を利用する際には epoxy-databinding が必要になります、databinding を利用しないのであれば追加する必要はないです。ライブラリを追加したら kapt と databinding を有効化するだけです。これでセットアップは完了です。

“`groovy
// kapt 有効化
apply plugin: ‘kotlin-kapt’

android {

// databinding

元記事を表示

[Android]Epoxy のサンプルと解説 (Databinding から作成)

# はじめに

RecyclerView を使う際には Adapter などに独自で処理を実装する必要があり、ここが RecyelerView を利用する上でかなり面倒な実装だったりします。 Epoxy はこの面倒な処理を実装してくれるライブラリらしいです。Epoxy のサンプルを作成してどんなことができるのかざっくりと解説していきたいと思います。

# 準備する

Epoxy を利用できるようにセットアップを進めます。ライブラリとして epoxy、 epoxy-databinding, epoxy-processor を追加します。databinding を利用する際には epoxy-databinding が必要になります、databinding を利用しないのであれば追加する必要はないです。ライブラリを追加したら kapt と databinding を有効化するだけです。これでセットアップは完了です。

“`groovy
// kapt 有効化
apply plugin: ‘kotlin-kapt’

android {

// databinding

元記事を表示

自作Androidアプリを公開するまでの流れ

#とりあえず参考書を見ながら作ってみた#

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/495537/7a2ae305-70d4-4079-ec9f-c5f1ef0e0076.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/495537/98193c99-01f7-0259-aa36-a1f05ed5b864.png)

※Android Studio 3.6.3

##AAB(Android App Bundle)ファイルを作成##

[Android App Bundle について | Android デベロッパー | Android Developers](https://developer.android.com/guide/app-bundle?hl=ja)
どうもあらかじめgoogle側が用意したAPKファイルを、ユーザ各々のデバイスに最適化し配布する形にするみたい

元記事を表示

外部ストレージにファイルを保存する

Androidで外部ストレージにファイルを保存する
実装の参考サイトをメモしておく

**■参考サイト**
https://akira-watson.com/android/external-storage-file.html

元記事を表示

[Online] potatotips #69 iOS/Android開発Tips共有会 備忘録

# はじめに
補欠から繰り上がり、[[Online] potatotips #69 iOS/Android開発Tips共有会](https://potatotips.connpass.com/event/171532/)に参加できたので、備忘録を残します。

connpass のイベントページにも記載がありますが、
[github](https://github.com/potatotips/potatotips/wiki/potatotips-69)で今までのイベントのテーマや資料を管理していて、取り組みもとても参考になります。

# 各発表に対する感想
どれも面白い発表でしたが、今回は自分がメインで聞いていたテーマに絞ります:bow:

ML Kit (Auto ML Vison Edge)で写真から家族を検出する

[ブログ(スライドは末尾)](https://techblog.timers-inc.com/entry/2020/04/24/143803)

**やりたいこと**

– 写真アプリで家族を検出できるようにする(今回は、大人・子供・猫・犬の区別)
– 使ったのは

元記事を表示

OkHttpで認証付きのプロキシ通信を行う

Androidだと、認証なしのプロキシの場合は端末の設定画面から設定することができますが、認証付きのプロキシは端末の設定画面から設定することができません。(ユーザー名とパスワードを入力できない。)

今回どうしても認証付きのプロキシで通信を行いたかったので
、色々と調べてみたのですが、OkHttpでサクッと対応できてしまったのでメモがてら投稿。

# `proxyAuthenticator` を使う

`OkHttpClient.Builder` の `proxyAuthenticator` で認証情報を設定します。

下記サンプルコードでは、ユーザー名 `username` 、パスワード `password` としています。

“`kotlin

val client = OkHttpClient.Builder()
.proxy(Proxy(Proxy.Type.HTTP, InetSocketAddress(“http://example.com”, 3128)))
.proxyAuthenticator(object : Authenticator {

元記事を表示

Android の MultiModule Project に Dagger を導入して雰囲気を理解する

在宅勤務になり時間ができてきたので、今まで難しくて手を出すのを躊躇っていた Dagger に挑戦しようと思いました。
Room のまとめをやろうと思っていましたが、自分の中で HOT な物からと思って順番が前後してます。

メッセージをリストで表示するチャットアプリ __ライク__ なプロジェクトを MultiModule にしました。
これを Dagger を使ってモデル層を DI するお勉強です。

色んな記事を見ましたがひとまずとっかかりを作るため、先人の知恵をフンダンに使用しています。理解するぞ
ほぼほぼ覚書なので雰囲気を掴んでいただけたら幸いです。。。

## Environment

– Android Studio: 3.6
– Gradle Plugin: 3.5.2

Dagger のライブラリは以下
(MultiModule 前提なので buildSrc に纏めています。)

今回は Android 用のサブライブラリを用いて実装していきます。

“`Dep.kt
object Dagger {
const val version = “2.26”

元記事を表示

Delphi10 AndroidでTLS対応メール受信

#はじめに
Delphi10 でAndroidアプリを作るの2本目です。
↓1本目はこちら
https://qiita.com/kenken2go/items/f2459caaa6cd649dae33
Internet系コンポーネントIndy もモバイルアプリで使えるとのことなので
今回はメール受信をやってみました。opensslを使ってTLSをサポートすることで
GMAILやOffice365でも使えることを確認してみます。

#評価環境
開発マシン: Windows10 professional (Core i5-3337U 1.8GHzで重いですT_T)
Delphi : Delphi 10.3.3 Community Edition
Androidマシン:Nexus7 (32bit)
Androidバージョン:6.0.1

#Android側の準備
開発マシンとNexus7をUSBケーブルでつなぐ
設定-開発者向けオプションで
 ・USBデバッグモードをONにする
 ・スリープモードにしないをONにする

#画面作成
メール受信設定、ボタン類、メールタイトル、メール本文 のコン

元記事を表示

[Android]ライブラリ導入方法

# ライブラリ導入方法
以下の手順となります。
・Module 追加
・dependencies追加
・プロジェクトビルド

## Module 追加
2.png
1.png
3.png

  • OTHERカテゴリの最新記事