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

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

Unityのモバイルゲーム向けセキュリティ関連覚書

##免責事項
**この記事に記載されている内容を、実際に試して発生した損害に対していかなる責任も負いません(補償しません)。**
**すべて自己責任のもとで行ってください。**

リリースされているアプリやゲーム、[ソフトウェア利用許諾契約(EULA)](https://ja.wikipedia.org/wiki/%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E5%88%A9%E7%94%A8%E8%A8%B1%E8%AB%BE%E5%A5%91%E7%B4%84#%E3%83%AA%E3%83%90%E3%83%BC%E3%82%B9%E3%82%A8%E3%83%B3%E3%82%B8%E3%83%8B%E3%82%A2%E3%83%AA%E3%83%B3%E3%82%B0)やアプリケーション利用規約などでリバースエンジニアリングは禁止されています。
実際に試す場合は、自分で開発しているアプリやゲームや脆弱性確認用でリリースされているアプリやゲームを使いましょう。

##はじめに
ハック(攻撃)と対策(防御)は表裏一体

元記事を表示

Android端末とマイコン(mbed LPC1768)をシリアル通信した。

# 使用したライブラリとその導入方法
 今回使用したライブラリは[usb-serial-for-android](https://github.com/mik3y/usb-serial-for-android) v2.2.1です。
 早速ですが、これの使い方から躓きました。リファレンス(Readme.md)を読むと次のようにあります。
>### 1. Add library to your project:
##### Add jitpack.io repository to your root build.gradle:
“`xml
allprojects {
repositories {

maven { url ‘https://jitpack.io’ }
}
}
“`
>##### Add library to dependencies
“`xml
dependencies {
implementation ‘com.github.mik3y:usb-serial-for-android:Tag’
}
“`

元記事を表示

ReactNativeでTextInputがmultilineの時paddingVerticalが効かない

## はじめに
割とピンポイントな内容ですが備忘録替わりに残そうと思います

## 起こった問題
タイトル通りですが`ReactNative`でmultilineの`TextInput`を使っている際に、縦に中央寄せしたい機会があり、`paddingVertical`を使い、上下に同じだけpaddingを取る方法で実装しようとしたところ上手く動きませんでした。

## 解決法

原因はわからないのですが(わかり次第更新します)単純にpaddintTopとpaddingBottomで上下に同じだけpaddingを取ると思った通りに縦の中央寄せを実現できます。

“`js:style
paddingTop: 10
paddingBottom: 10
“`

元記事を表示

FlutterでFirebaseを使ってみる〜投票アプリ〜

自分の備忘録用記事です。

完成形
![sample.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/116581/5773ff0b-60b6-7dd0-09bc-1e45d07fc958.gif)

下記の記事を参考にしてます。

https://codelabs.developers.google.com/codelabs/flutter-firebase/index.html#0

## Flutter projectの作成

まずはFlutter projectの作成。
今回はAndroid Studioメインで作成します。
(Flutterのプラグインは導入済みの想定。まだの人は[こちら](https://flutter.dev/docs/get-started/install)から)

**Start a new Flutter project**をクリック。

スクリーンショット 2020-04-15 17.35.45.pngスコープ関数の使いどころ(Kotlin)

## はじめに

Kotlinには「スコープ関数(Scope-Function)」という関数があります。
いくつか種類がありますが、どの関数も似ていて使い分けや使いどころがわからなかったのでまとめました。

## 注意

私は業務でKotlinを使っておらず、iOSアプリ開発でSwift(スコープ関数がない言語)を使っています。
そのため、Kotlinをメインで使っている人とは考え方が異なると思います。

スコープ関数を使い慣れていないため、考え方が変わることも大いにありえます。

## 前提条件

本記事を読むための前提条件です。

– Kotlinのスコープ関数を理解している
理解していない場合、[公式ドキュメント](https://kotlinlang.org/docs/reference/scope-functions.html)をご参照ください

## 環境

– Kotlin:1.3.61

## 結論

まず私の結論を述べます。

– `with` ・ `run` ・ `apply` は使わない
– nullableな変数を処理したい
– 戻り値を使う → `

元記事を表示

Android – Decompiler APK

You need two below tools.

https://github.com/pxb1988/dex2jar
http://java-decompiler.github.io/

元記事を表示

AWS Amplify Android を試してみる(Mac)

[AWS Amplify iOSを試したい方はこちらを参照ください](https://qiita.com/ksato2032/items/f38830b8b6decc0cc936)

# はじめに
AWS Amplify Android を[Getting Started](https://aws-amplify.github.io/docs/android/start)にしたがってMacで試してみる。
以降の各章はGetting Startedに合わせている。

# Prerequisites

以下の通り、Getting Started に記載されている手順は Mac でしか動作しない。Windows の場合、下の説明にあるリンク先の手順を実施する必要がある。
https://aws-amplify.github.io/docs/android/start#prerequisites

“`
These steps currently only work on Mac. If you have a Windows machine, follow the steps on one

元記事を表示

【ReactNative】react-native-mapsを導入する

# はじめに
ReactNativeでアプリを作る過程で地図を表示させたくなったので、`react-native-maps`を導入しました。
インストール自体は簡単ですが、`GoogleMap`を使う場合はちょっとだけ手間がかかったので備忘録として。

# 環境

“`
“react-native”: “0.61.5”,
“react-native-maps”: “^0.26.1”,
“`

# 料金
GoogleMapは使用量によって値段が変動します。
だいたいアプリにマップを表示させるとなると、`Dynamic Maps`を使うと思いますが、2020年4月現在は下記のような料金となっています。

参考:[https://cloud.google.com/maps-platform/pricing?hl=ja](https://cloud.google.com/maps-platform/pricing?hl=ja)

スクリーンショット 2020-04-15 22.15.14.pngMacにReact Nativeの環境を構築する手順

`2020-04-15`時点の手順です。

# `Xcode`をインストールする

`App Store`より検索してインストールする。

# `Xcode`のライセンスをAcceptする

“` bash
$ sudo xcodebuild -license accept
“`

# `Android Studio`をインストールする
[Android Studio](https://developer.android.com/studio?hl=ja) からダウンロードしてインストールする。

# `Android SDK`をインストールする

`Android Studio`を起動する。起動時に自動でインストールされる。

# `Node.js`をインストールする

ここでは`nvm`を利用してインストールする。

## `nvm`のインストール

“` bash
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
“`

## ログイン時に`nvm

元記事を表示

ScrollView配下のExpandableListViewが展開できない

# 概要

折りたたみ式のViewを作りたいときにたまーに使う[ExpandableListView](https://developer.android.com/reference/android/widget/ExpandableListView)ですが、ScrollView配下にあるとうまく展開されず

parentとchildそれぞれのadapterにデータが正常にセットされているのに・・・

原因はListViewを継承しているので、これ自身がスクロールすることが可能
そのため、スクロールできるものにスクロールできるものが入るのが落とし穴というわけでした・・

`ScrollView in ListView`とかでググるとまさにこの問題が多く出てくるのですが、今回はExpandableListView自体にスクロールさせる必要は皆無であったため、スクロール自体をなくす方向で修正

# 実装

“`kotlin
class NonScrollExpandableListView : ExpandableListView {

constructor(context:

元記事を表示

共創プラットフォームアプリ「Blabo!」をFlutterでフルリプレースしました

# はじめに
こんにちは、Blabo!でモバイルエンジニアをしている@youmeeeです。
今回は、弊社の共創プラットフォームサービスである「Blabo!」のiOS/AndroidアプリをFlutterにてリプレースしたので技術的な話や、リプレースを通じての所感などを書き記していこうと思います。

Blabo!のFlutterリプレース版は各OSこちらからインストールできます。

iOS版:
https://apps.apple.com/jp/app/1174269704
Android版:
https://play.google.com/store/apps/details?id=bo.bla.app&hl=ja

# Flutterとは

FlutterとはGoogleが提供するクロスプラットフォームSDKです。
2018年にStableリリースが発表され、最近サービスでの導入事例もじわじわと増えてきている印象です。
2019年にはWebサポートも発表され、今最も注目されているクロスプラットフォームSDKと言っても過言ではないと思います。

[Flutter公式ページ](https

元記事を表示

[Android]ディープリンクへの対応手順

# ディープリンクへの対応手順

## 以下の手順となります。

**マニフェストを設定 1**

“`kotlin






“`

applink_1.</p></blockquote>
</blockquote>
<aside class='widget widget-post'>
<div class='tag-cloud-link'>Java</div>
<div class='tag-cloud-link'>HTML</div>
<div class='tag-cloud-link'>Android</div>
<div class='tag-cloud-link'>Kotlin</div>
<div class='tag-cloud-link'>AndroidStudio</div>
</aside>
<div><a style='width:100%;' class='btn__link' href='https://qiita.com/myatthinkyu/items/872a2f4713befdffafcf'>元記事を表示</a></div>
<h3 id=JavaプロジェクトをKotlinに書き換えるための初期設定

完全にJavaで記述されたAndroidプロジェクトにKotlinのファイルを追加するための初期設定手順をまとめます。

## appのbuild.gradle

“`
+ apply plugin: ‘kotlin-android’
+ apply plugin: ‘kotlin-android-extensions’

buildscript {
}

repositories {
+ mavenCentral()
}

dependencies {
implementation “org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version”
}

android {
}
“`

### 解説
プラグインを適用します。

“`
apply plugin: ‘kotlin-android-extensions’
apply plugin: ‘kotlin-android’
“`

repositoriesにmavenCentralを追加

“`
mavenCentral()
“`

ライブラリセットにKo

元記事を表示

Android GoogleMap Info Window maker.title活用

初投稿になります。
Androidの学習を初めて、3ヶ月目に作成したアプリでつまづいた点をまとめてみました。
Info Windowのmarker.title(日付)を利用する点にポイントを絞っていますので、
コードは抜粋して載せております。

#環境
Androide Studio 3.5.3
Android6,9にて動作確認済み

#この記事でやること
Realmで保存していた画像を、タップされたマーカーのInfo Windowから日付を受け取り、同じ日付で保存された画像を取り出す。

1.Info Window をタップ
スクリーンショット 2020-04-15 8.53.14.png

2.保存されていた画像を表示
スクリーンショット 2020-04-15 9.3</p></blockquote>
</blockquote>
<aside class='widget widget-post'>
<div class='tag-cloud-link'>Android</div>
<div class='tag-cloud-link'>Kotlin</div>
<div class='tag-cloud-link'>GoogleMap</div>
<div class='tag-cloud-link'>googleapi</div>
<div class='tag-cloud-link'>Realm</div>
</aside>
<div><a style='width:100%;' class='btn__link' href='https://qiita.com/shin19279467/items/6a8a38e7d92881a41779'>元記事を表示</a></div>
<h3 id=flutter Error connecting to the service protocol がandroid studio emulator だけに起きる

emulator をpixel2 pieにしたら通った。

元記事を表示

Flutterエラー Gradle build failed to produce an .apk file. It’s likely that this file was generated under プロジェクトディレクトリbuild, but the tool couldn’t find it.

Androidの実機でデバッグビルドしようとしたところ、掲題のエラーに遭遇した。
`build.gradle` でFlavorを追加したのに、実行コマンドが対応していなかったのが原因。
以下のようにflavorを指定した起動設定にすれば解決。

figure.png

元記事を表示

FloatingActionButtonが黒い場合の対処

2020/4/14現在のお話
今後ハマるかもしれないので備忘録として

### 環境

“`gradle
implementation ‘com.google.android.material:material:1.2.0-alpha03’
“`

### 実装

“`xml

元記事を表示

[Android] レビューダイアログ表示

# レビューダイアログ表示

以下の手順となります。

・ライブラリ導入して使う
・ダイアログ表示タイミングコンフィグレーションする

## ライブラリ導入

**1.dependencies に追加する **

“`kotlin

implementation ‘com.vorlonsoft:androidrate:1.2.5-SNAPSHOT’
“`
sshot_1.png

**2. Gradle Syncしてライブラリを入れる**
sshot_2.png【Kotlin】そろそろRxを卒業して、Kotlin Coroutines Flow + RetrofitでAPIを叩いてみよう【Coroutine】

## 拝啓、RxJavaを使っている皆様へ
Coroutineはいいぞ
Coroutineこわくないよ

## 概要

現在Androidアプリでよく使われている技術といえば、RxJava(RxKotlin)です。
Retrofitを使ったAPI周りから、Listenerの代用など幅広く使えます。
一方で、明示的にDisposeを書いてあげないとメモリリークする危険などもあり、Rxちょっとな〜と思う場面も多いです。

さて、そんなRxに取って代わろうと言わんばかりに、Coroutine周りが進化し続けています。
今回の内容に関するところだけでいうと、

– [Coroutines Flow](https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.flow/-flow/)の導入
– [Retrofit Version2.6からのCoroutine対応](https://github.com/square/retrofit/blob/master/CHANGELOG.md

元記事を表示

TableLayoutでボタンを画面いっぱいに表示する

#横幅を画面いっぱいに広げたい
↓このボタンを横幅いっぱいに広げたい。
![table1.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/566570/382ee5d6-7143-6b18-358e-0778030ed83d.png)

元となるコード

“`activity_main.xml

元記事を表示

OTHERカテゴリの最新記事