Android関連のことを調べてみた2022年09月22日

Android関連のことを調べてみた2022年09月22日

急にビルドエラーになった時に試してみて欲しいこと

# 初めに
今回は`GitHub`からプルして来た時や、デバッグ中に起きる急なビルドエラー時にやってみると効果的なものを紹介していきます。
### 本文
***一つ目***が***キャッシュの削除***です。
これは定番だとは思いますが、`Android Studio`のメニューから
File->Invalidate Cachesを選択し全てにチェックを入れて実行のボタンを押すと`AndroidStrudio`のキャッシュを削除した上で再起動をかけてくれるので一度リセットされた状態になるのでおすすめです。

***二つ目***が***gradleのクリーン***です
該当プロジェクトを`AndroidStudio`で開いた状態で`AndroidStudio`下部にあるターミナルメニューから下記のコマンドを実行します。
“`terminal
./gradlew clean assembleビルドフレーバー
“`
こうすることで`gradle`をクリーンして該当のビルドフレーバーを実行してくれるので1つ目で紹介したやり方でビルドできない場合でも意外と直ったりします。
### 最後に

元記事を表示

Kotlinスコープ関数(let,run,also,apply)の使い方について考えてみる

## はじめに
Kotlinの標準ライブラリにはスコープ関数という関数が存在します。
自分自身、JavaからKotlinに入ったのでそれなりの文法などはすんなりと理解できたのですが、スコープ関数についてはJavaには無いので理解が薄いままなんとなくで使用していました。
今回理解を深めるために少し調べてみたので備忘録を含めまとめたいと思います。

## 5つのスコープ関数
Kotlinには5つのスコープ関数が用意されています。
– let
– apply
– run
– also
– with

これらの関数は、基本的に全て同じことを行いますが、それぞれ特徴がありますのでまとめます。
(`with`に関してはほとんど使用機会がありません(自分は)ので今回は割愛させていただきます。)

## let
まずは使用頻度の高い`let`
| スコープ関数名 | 対象オブジェクト | 戻り値 |
|:———–|:————|:————|
| let | it | 最後の実行コード |

`let`は主にnullableな変数

元記事を表示

【Android Wear】Wearエミュレータとスマホ実機の接続方法

# はじめに
Wearエミュレータ(Android Wear)とスマホ実機(Android)の接続方法について記述。

# 手順

### Wearエミュレータ側の設定
以下の方法でADB Debuggingを有効化する。Wear OS API 30の設定を記述。
`Settings -> System -> About -> Versions -> Build numberを7回タップ`
`Settings -> Developer options -> ADB debuggingがONになっていることを確認`

### Wearとスマホの接続
スマホとPCをUSB接続。
`adb -d forward tcp:5601 tcp:5601`をTerminal上に入力。

### スマホ実機側の設定
Wear OSアプリを起動し、エミュレータと接続。

参考サイト:

Android WearのエミュレータをAndroid実機本体に接続する

元記事を表示

Android HTTP通信を行う(HttpUrlConnection)

# はじめに
学習記録。
Android開発で外部サーバーのCSVファイルやJSONを参照するためにHTTP通信を行う必要があったのでメモとして残す。

# 前提
アプリをインターネットに接続する許可を与えるためmanifestタグ内に以下2つのタグを追加。
“`java:AndroidManifest.xml


元記事を表示

Jetpack ComposeとHiltによるDIのお勉強備忘録

インターンなどに参加し,DIの勉強の必要性に駆られたため,ここにメモを残します.あなかしこ.

## 前提: なぜDIが必要なのか[[1][2]](#参考文献)
– 複数箇所で同じクラスのインスタンスを使うとき
– 同じ生成コードを複数書く必要がある.
– 一つのオブジェクトの中で,他のオブジェクトをインスタンス化すると.
– 生成元は,生成先を知る必要があるから依存性が高くなる.
– 単体テストができなくなる場合がある.

### MVVMの場合
– Viewは,ViewModelの生成方法(依存関係)を知る必要がある.
– ViewModelは,Modelの生成方法を知る必要がある.

ということらしい
__理解を深めるために,実際にアプリを作ってみようというところ.__

## はじめに

### アプリ開発上の参考資料
DIを利用している参考資料(サンプルアプリ)がないか探した結果…

– __Jetpack ComposeによるAndroid MVVMアーキテクチャ入門__ [[1]](#参考文献).
こちらはMVVMアーキテクチャの理解を目

元記事を表示

ActionBarでSearchViewを使うと意図せず他のアクションボタンが消えちゃう問題の解決策

Androidで`ActionBar`に`SearchView`のようなアクションビュークラスを使用してる時に発生するバグもどきに対する備忘録です。
# 問題の詳細
以下のコードで`SearchView`が開かれた(expand)状態でオーバーフローメニューをタップしたり`DialogFragment`を開いたりすると表示されていたアクションボタンがオーバーフローメニューに移り、更にその状態で`SearchView`を閉じると表示されていた`SearchView`を含めた全てのアクションボタンが消える。

動画

![再現動画](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/807403/10e9a9ad-a45b-7798-c0dd-f0a3ae1594b4.gif)

“`xml:menu_main.xml

GradleTemplate of unity not found : /Applications/Unity/Hub/Editor/2021.3.6f1/… の解決策

# 動作環境
– MacBook Pro Intel Core i5 Monterey version 12.0.1
– Unity 2021.3.6f1
– NRSDKForUnity_Release_1.9.5
– NrealLight モデル:NR-9101GGL
– Xperia 5 Ⅱ SOG02SLA

# 背景
Nrealで使うAndroidのアプリをBuildしようとしたら下記のようなエラー。
![スクリーンショット 2022-09-20 10.19.32(2).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2700137/82c0b976-76ee-82a9-a687-3af7961e92cd.png)

# 解決策