Android関連のことを調べてみた2023年11月02日

Android関連のことを調べてみた2023年11月02日

AndroidのJUnitテストは超ムズい(7)

# Robolectric-4.11.xがリリースされた
以前に、compileSdk = 34だと、Robolectricが対応していなくて、localテストが動かないという記事を書きました。

https://qiita.com/cozyk100/items/0b3e9a91ca5404f382c6

昔からそうなんですが、googleはこのcompileSDKのAPIレベルのハードルをどんどん上げてきます。開発者をできるだけ最新のAPIレベルに誘導しようとします。

Robolectricに限らず他の依存ライブラリも、AndroidSdudioの推奨する通りバージョンを上げていくと、gradle同期の時にcompileSdk = 34を要求されます。

Robolectricも先月、10/29にやっと、4.11がリリースされ、compileSdk = 34に対応しました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/933408/b24e09da-a518-b463-dcb6-

元記事を表示

【Flutter】Integration Testを極めるためのテクニック集

# はじめに
Integration Testを実装していく中で最初に知っておきたかったと思ったことをまとめてみました。これまで実装してきた方やこれから実装する人にも参考になる情報があれば嬉しいです。

https://docs.flutter.dev/cookbook/testing/integration/introduction

ちなみに、Integration Testとは結合テストのことです。
ビルドしたアプリでテストを実行するので単体テストよりも実際の操作に近い環境でテストを実行できます。

# 1. ホットリスタートを使って実装する
テスト実装中は以下のコマンドで実行しましょう。

“`sh
flutter run -t integration_test/main_test.dart
“`

integration testの実行は、以下のコマンドで実行するように紹介されています。

“`sh
flutter test integration_test
“`

`test`コマンドで実行すると`ビルド`→`実行`→`終了`→`ビルド`→`実行`→`終了`のように

元記事を表示

【個人開発】Bardと一緒に0からのFlutterアプリ開発

# はじめに

前々からスマホアプリの開発に興味があったので、Bardと一緒に開発・リリースしてみました。Flutter自体触ったことがなく、また他AIもそうだと思いますが時々嘘を言います。まったく知識がないので本当のことの中に嘘(古い情報)を混ぜられるので苦しかったです。ですがやはりコードを書いてそれが動くのは面白かったです!

https://bard.google.com/chat?hl=ja

# 成果物

QRコードを読み込んで保存もできるアプリをリリースしました。以前、店員さんが見せてくれたQRコードを読み込んで会員登録をする機会があったのですが、操作を誤ってQRコードを読み込むところからやり直しになってしまいました。一度読み込んだものを保存しておいて、もう一度遷移する機能が欲しいと思ったので自分で作ってみました。
やってみたかったですがPCスペック、実機の都合上App Storeへのリリースはできませんでした。

https://play.google.com/store/apps/details?id=com.appli.qrs

余談ですが、QRコードという文言を商用

元記事を表示

FirebaseAnalyticsのDebugViewで実機のAndroid端末が表示されない時にやったこと 

## やりたかったこと
FirebaseAnalyticsのDebugViewでログをリアルタイムで取得したかったが、
デバッグに使用するデバイスのところにデバイスが表示されなかった。

## 直接の原因

__広告ブロッカーをつけていた__

私のAndroidではAdguardを使用していたのですが、Adguardをつけている状態だと`デバッグに使用するデバイス`に表示されないようです…(ログ自体も送信されない?)

## 他に注意すること
結局、広告ブロックが原因だったのですが、もうひとつミスってたことがあったので書き残しておきます。

### adbコマンドが間違っていないか
androidでログを送信する際には、以下のadbコマンドを打つ必要があります。

“`
adb shell setprop debug.firebase.analytics.app パッケージ名
“`

パッケージ名を間違えていてもエラーなどはでないため、注意が必要です。

adbコマンドを打った後、再起動する必要があるのも注意です。

元記事を表示

Floating しているPaletteを非表示にする方法

「Attached Side → Left」を押せば非表示になる。

元記事を表示

Transpoterを使ってExpoアプリをTestFlightで配布

# Transpoterを使ってExpoアプリをTestFlightで配布
easコマンドではなくiosはMacAppの「**Transporter**」を使ってTestFlightを配布するところまでの忘備録
androidも
[Transporter](https://apps.apple.com/jp/app/transporter/id1450874784?mt=12 “App Store Transporter”)
# 1 buildに必要なファイル作成
**eas build**を実行する前に
eas.json,
app.config.js,
app.json
この3ファイルを適宜作成します。
# 2 build実行
次に早速buikdしていきます。

**iosの場合**
“`zsh
eas build –profile develop –platform ios
“`
**androidの場合**
“`zsh
eas build –profile develop –platform android
“`
それぞれ実行してうまくいくとexpoの管理画面から

元記事を表示

Mi Power Bank 3i 10000mAh: The Perfect Blend of Power and Style

Introducing the Mi Power Bank 3i 10000mAh, a pocket-sized powerhouse. This versatile gadget features dual USB output, allowing you to charge two devices at once, making it the ultimate on-the-go solution.

![Mi Power Bank 3i 10000mAh.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3576050/b8685e16-71ea-755f-a1c9-986bf2ff03fd.jpeg)

What sets the Mi Power Bank 3i apart is its dual input with Type-C and Micro USB support. No more searching for specific cables; you can charge it w

元記事を表示

【Android】「TopBarの文字」と「画面の文字」を両方共変える方法

以下の記事が参考になりました。

【Kotlin】下部ナビゲーション・アクティビティを触ってみる

https://qiita.com/Natsukii/items/ce8f1d56ae027e565309

元記事を表示

Windows Subsystem for Android™️ でデバッグする

# はじめに
期間が空くと忘れてしまうので、メモしておきます。

### 前提
– Windows Subsystem for Android (WSA)が導入済みで、開発者モードが有効化済みとします。
– Unity、または(および)、Android Studioが導入済みで、`adb`が使用可能とします。

### 確認した環境
– Windows 11 22H2
– WSA 2309.40000.10.0
– Unity 2022.3 LTS
– adb 33.0.2-8557947

# アプリのインストール
「Android™️ 用 Windows サブシステム」で「詳細設定」タブを開き、「開発者モード」欄の「ADB は 127.0.0.1:58526 で開きます。」を確認して、ポート番号が異なる場合はメモしてください。

## Unityの場合
1. `Build Settings`を開きます。
1. `Run Device`で`Enter IP`を選び、`127.0.0.1:58526`を入力します。
1. `Run Device`が切り替わったことを確認して`Build

元記事を表示

モバイルアプリのリリース毎の変化を一覧で確認

# 概要
モバイルアプリのリリースをした際に、**「最新のリリースが結果としてユーザーに良い体験を提供できているのか?」**、**「逆にリリースによってパフォーマンスや体験の悪化が発生していないか?」** など、リリース後に気になることは沢山あります。

New Relicの9月のアップデートで、モバイルアプリのバージョン視点で柔軟な傾向分析ができるようになったので画面を確認していきたいと思います。

:::note info
最新のアップデートの詳細はこちら。[New Relic アップデート(2023年9月)
](https://newrelic.com/jp/blog/nerdlog/new-relic-update-202309 “New Relic アップデート(2023年9月)”)
:::

公式ガイドはこちらです。

https://docs.newrelic.com/jp/docs/mobile-monitoring/mobile-monitoring-ui/mobile-app-pages/version-trends-compare-user-adoption-me

元記事を表示

【備忘録】【Tips】「gradle」関係のエラーを  避けるためのTips

《先輩からのアドバイス》

依存関係のコードを一つ一つ追加する度にビルドするべし。

そうすることで何が原因でエラーが起きているかを追求しやすいので。

元記事を表示

【Android】触覚フィードバックをボタンにつけてみる【Kotlin】

# 触覚フィードバックとは
この単語のまま検索をかけたところ
>デバイスやシステムからユーザーの手や指に対して、振動や圧力などの物理的な刺激を与えることで、操作の結果や状態を伝える技術のこと

とあります。

androidで特定のボタンなどを押した時に、少し振動する機能のことですね。

# 実践
今回は タイトルにもあるように ボタンが押された時に触覚フィードバックで少し振動するようにします。

button.setOnClickListener {
it.performHapticFeedback(HapticFeedbackConstants.CONTEXT_CLICK)
}

今回は **HapticFeedbackConstants**という 直訳すると触覚フィードバック定数という、そのまんまな機能を使って実装しました。

# 参考

https://developer.android.com/reference/android/view/HapticFeedbackConstants

元記事を表示

Unityで作成したゲームをAndroidに組込む

# はじめに

## やりたいこと

次の方針で、Androiのゲームアプリを作りたい!
* ゲームの作成はUnityで行いたい
* メニュー画面など、3D表示しない部分はAndroid Studioで作りたい

![qiita5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3585655/0d252872-8dd6-5e9f-2c80-df43148d4492.png)

## やったこと

![qiita6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3585655/449df17c-73f7-0162-3e50-d297e23a07c8.png)

## 注意事項

* この投稿は、Unity、Android Studioでの開発経験のある方を対象としております
* Unityをライブラリとして組込む場合、全画面表示以外はサポートされていません

# 開発環境

* Android Studio
*

元記事を表示

FlutterでWebリンク、ユニバーサルリンク、アプリリンクを統一的に扱いたい

# 結論

“` dart
setUrlStrategy(PathUrlStrategy());
“`

を設定するとOK!

# やりたいこと

Flutterで `go_router` 等でルーティングすると、Webでは以下のようなURLになりますね。

“`
https://example.com/#/pages/1
“`

Flutter Webをホスティングし上記URLをクリックすると、URLがハンドリングされ `go_router` で設定したパスに飛びます。同一のFlutterアプリをモバイル向けに公開している場合、アプリインストール済の端末ではブラウザではなく、アプリ側で開いてほしいということがあります。

http[s]から始まるURLをアプリでハンドリングするには、iOSでは「universal link」、Androidでは「app link」という仕組みを利用する必要があります。
アプリリンクやユニバーサルリンクの設定方法については下記参照してください。Androidは `AndroidManifest.xml` 、 iOSは `info.plist`

元記事を表示

【Android】アプリのストア公開の手順ざっくり解説

# アプリのストア公開手順
1. アプリを用意する
2. アプリのリリース バージョンをビルドして署名する
2. アプリのリリース バージョンをテストする
2. アプリをユーザー向けにリリースする

ざっくりと、こんな感じです。

# 手順をもう少し詳しく解説します
## アプリを用意する
リリース用のアプリを用意します。
`gradleファイル` をリリース用にします。
`debuggable` オプションに対して `false` の値を指定することで、デバッグ可能性(debuggable属性)を無効にすることができます。

`Java`の場合、

– Groovyの場合(例:build.gradle ファイル内):
“`java
android {
buildTypes {
debug {
debuggable false
// 他の設定…
}
// 他のビルドタイプの設定…
}
// 他のAndroid設定…
}
“`
Kotlinの場合

元記事を表示

MetaQuest のパススルーの設定方法

# MetaQuest3 パススルー設定方法
煩雑な作業が必要になるのでなるべく簡潔にまとめました。Windows での開発を想定しています。

## Unity の環境構築
### Android の開発環境の導入
Android Studio のインストールを推奨

**Unity Hub** の 左側のリストから **Installs**を選択
Install Editor で適当なバージョンを選択し、 Installを押す
(既存にバージョンがある場合は右側の歯車をクリックして**Add modules**を選択)
下の画像の通りであればOK

バージョンをインストールしてください

Android Setting.png (52.7 kB)

### Unity アセットストアから Ocul

元記事を表示

【Flutter】初心者のためのGridView徹底解説!

# 概要

参考文献が少ないFlutterでは、使用するWidgetがわかったとしても、そこからがちょっと手強いっていうパターンありますよね。
ということで、当時Flutte初心者であった僕が苦戦したGridViewの実装について、パラメータ単位で最低限覚えておくべきものを徹底解説していきます!

徹底解説と言っても、そこまでGridViewの実装回数を重ねてきたわけではないので、これさえ覚えておけば!というものを集めました。

## こんな人に読んでほしい

* Flutter初心者の方
* GridViewの実装を検討している方
* GridViewのオーソドックスな実装を経験したことがある方
* GridViewを頻繁に実装したことがある方 ←コメントください!

## 実装環境

* VSCode
* AndroidStudio(エミュレータ生成のため)
* Flutter:Ver2.10.5

# GridViewでの実装画面

GridViewでは、こんなUIを実装できます。

Flutter 2系からFlutter 3系へ Android ビルドエラー

#### [ エラー文 ]
abstract and does not implement abstract member public abstract fun error(p0: String, p1: String?, p2: Any?): Unit defined in io.flutter.plugin.common.MethodChannel.Result

#### [ エラーコード ]
“`android/app/src/main/kotlin/XXXX/MainActivity.kt

private fun onDataUpdated(type: String) {
channel.invokeMethod(“onDataUpdated”, type, object : MethodChannel.Result {
override fun success(result: Any?) {
Log.d(“Android”, “result = $result”)
}

元記事を表示

麻雀初心者救済!!これで雀荘に行けますアプリ「麻雀サポーター」作った

# はじめに
麻雀初心者を救うアプリ「麻雀サポーター」リリース。

https://play.google.com/store/apps/details?id=com.temmaru.mahjong_supporter

初心者の「雀荘に行けない」以下の悩みを解決する!
– 点数計算ができない
– 打牌選択や多面待ちの待ち探しに時間がかかってしまう
– 誤ロンとかチョンボしそう

本アプリケーションは、
手牌を**リアルタイムカメラに

元記事を表示

Androidのkeystoreのパスワードの変更方法

“`
keytool -storepasswd -keystore ./キーストア.key
“`

“`
keytool -keypasswd -alias エイリアス名 -keystore ./キーストア.key
“`

元記事を表示

OTHERカテゴリの最新記事