Android関連のことを調べてみた

Android関連のことを調べてみた

X のURLスキーム(Universal Links)を作成した場合、Androidで「入力した単語の検索結果はありません。しばらく…」のメッセージが出る場合の対処法

## はじめに
Xが開かれるか、シェアボタンを押したWeb上で出るかは環境によって異なるようですが、「入力した単語の検索結果はありません。しばらく…」のメッセージが表示され適切にシェアが出来ない場合があります。

## 原因
このエラーは、使用しているURLスキームが不適切な場合に発生します。

## 注意すべき点
X のURLスキームを実装する際、`https://twitter.com/share?`の使用は避けるべきです。このスキームは一部の状況(iPhone,AndroidのWeb版 X)で動作するものの、現在ではAndroidのアプリ版の X でエラーを引き起こす可能性があります。代わりに、以下のURLを使用することで解決できます。

– **誤ったスキーム**: `https://twitter.com/share?`
– **推奨スキーム**: `https://twitter.com/intent/tweet?`

使用例)
“`html
// 「%0a」は改行をURL用にエンコードしたもの
Android Firebase Authentication:Play Console の署名鍵(SHA-1)まわりの問題

他の多くの人がそうであるように、1,2日ほどの時間を Android の Google Sign まわりに吸い取られてしまったのでできる範囲でトラブルシューティングを残しておく。

## 前提

まずログイン部分の実装。[Firebase のドキュメント](https://firebase.google.com/docs/auth/android/google-signin?hl=ja)に一連の流れを書いてくれてないので非常に苦労した。

“`LoginScreen.kt
// 旧来の方式?
val googleIdOption = GetSignInWithGoogleOption.Builder(
serverClientId = stringResource(id = R.string.web_client_id) // TODO: switch by flavor
)

// OneTap signIn 新しい方式?
// val googleIdOption = GetGoogleIdOption.Builder()
//

元記事を表示

oss-licensesを使用してOSSライセンスを表記する

## はじめに
* Androidアプリ開発の際にOSSライセンス表記が必要になる場合がある
* 自動で表示をしてくれるAPIをGoogle公式が提供してくれているため試す
* [オープンソースの通知を含める](https://developers.google.com/android/guides/opensource?hl=ja)

## 対象者
この記事の対象者

– Androidアプリ開発初学者

## 最低限で実装してみる

### gradle
“` gradle:build.gradle.kts
buildscript {
repositories {

google() // maven { url(“https://maven.google.com”) } for Gradle <= 3 } dependencies { ... classpath("com.google.android.gms:oss-licenses-plugin:0.10.6") } plugins { id("com

元記事を表示

Java で非同期処理 for Android :CompletableFuture 入門

# はじめに

非同期処理は、モダンなAndroidアプリケーション開発において欠かせない技術の一つです。アプリがユーザーの操作に対して素早く反応し、スムーズな体験を提供するためには、バックグラウンドでの作業(例: ネットワーク通信やファイル操作など)を効率的に行う必要があります。これを同期的に処理してしまうと、操作が完了するまでアプリ全体が固まったり、ユーザーに「フリーズしている」という印象を与えることになります。

非同期処理を正しく使うことで、こうした問題を回避し、ユーザーが操作中でもアプリがスムーズに動作し続けるように設計できます。特にAndroidアプリでは、メインスレッド(UIスレッド)で重たい処理を行うと、アプリが応答しなくなる恐れがあり、最悪の場合、システムから「アプリが応答していません」(ANR: Application Not Responding)エラーを出されてしまいます。

ここで役立つのが、Javaの標準ライブラリで提供されている **`CompletableFuture`** です。`CompletableFuture` は、Java 8 から導入された

元記事を表示

【Flutter】Android開発環境を構築してエミュレータでアプリ起動確認まで(Windows環境)

自分用のメモ。次回からFlutter開発環境を作るのに悩まなくて済むように。

OS: Windows 11 Pro

## 各種ソフトウェアをダウンロード&インストール&設定

### Git for Windows

[Git for Windows公式サイト](https://gitforwindows.org/)にアクセスして、Downloadを押下。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/145371/eda5670c-53ad-e116-114a-f7fde38fba38.png)

記事執筆時点のバージョンはGit-2.47.0.2。

Download後、exe実行でインストールするが、結構色々なオプションを問われます。
必要に応じて設定を変更しても良いが、後から変更もできるので一旦今回は全部デフォルトのままでインストールした。

GitはVSCode経由でFlutter SDKをinstallする際などで使用されるので最初に入れておく。

### Visual

元記事を表示

【Flutter】画面に描画される位置がずれてしまう…

# はじめに
はじめまして!
今回、Flutterで動作分析アプリを開発した際のハマって悩んだことを記事にしました。
画面に描画する際になぞった位置とずれてしまうという問題が解決できず長い間悩みました。
同じような問題で悩んでいる方の参考になれば幸いです。

# 今回作成したアプリ
まず初めに今回作成した動作分析アプリについてご紹介します。
今回作成したのは動画内に自由に描画できるアプリです。
フリーハンドでの描画や直線の描画、角度の表示などが行えます。
そのような機能を実装することで、スポーツの動作などで姿勢や関節の角度をすぐに表示することができ、動作確認に役に立つと考えました。
他にも過去の動画を保管したり、動画の詳細情報(日付、タイトル、メモ、カテゴリ)を保存できます。
また、動画の再生だけではなく、コマ送り、再生速度調整の機能を実装しました。
詳しくはYouTube Shortに再生リストでまとめていますので、ぜひご覧ください。↓

元記事を表示

非対称な角丸

Material Design にある Connected button group の両サイドにある片方だけ、丸みがあるボタンってどうやって作るんだろうというお話です。

Connected button group
https://github.com/material-components/material-components-android/blob/master/docs/components/Button.md#connected-button-group

Web サイトから転載
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3853334/b5c19910-afb5-cd2d-ce74-02527a4e5d7b.png)

## 非対称な角丸の設定方法
そりゃそうだろって話ですが、Style を定義して適用すれば OK です。
### Style 定義
styles.xml に左側用と右側用の Style を定義します。
“`xml:styles.xml

OTHERカテゴリの最新記事