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

Android関連のことを調べてみた2020年11月22日
目次

[Android]ホーム・ランチャーアプリとして起動できるようにする

Android では Home ボタンを押したときに特定のアプリを表示するようになっています。これを一般的にホームアプリやランチャーアプリと言います。例えば Microsoft Launcher などですねこれらをホーム・ランチャーアプリと呼びます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/79387/cddc8f34-9a15-c62f-0abd-ac511c4c72a4.png)

ホーム・ランチャーアプリとして起動するには AndroidManifest.xml の Category に`android.intent .category.LAUNCHER` と `android.intent.category.DEFAULT` を追加します。
`android.intent.category.LAUNCHER` はこのアプリのカテゴリをランチャーアプリとするもので、`android.intent.category.DEFAULT` は暗黙的インテントを受け取れるようにするも

元記事を表示

【DroidScript】スマホでスマホアプリを作る シリーズまとめ

##概要
DroidScriptというアプリを使うと、スマホからjavascriptベースの記述でスマホアプリを作れてしまうらしい。

DroidScriptでググっても日本語のサイトはあまりヒットしないし、Qiitaの記事もゼロ・・・面白そうなアプリなのに(´・ω・`)

以前にWEBアプリ導入の練習で「電子レンジワット数で加熱時間を換算するアプリ」を作り、今回も同じお題で練習してみたので、まとめてみた。

参照:[【GAS】電子レンジワット数で加熱時間を換算するwebアプリを作ってみた](https://qiita.com/YasumiYasumi/items/f618fcbbe8beed2db8a9)

##これまでのまとめ
[スマホでスマホアプリを作る① Hello World!](https://qiita.com/YasumiYasumi/items/10796071033a9cefc0b4)
DroidScriptの紹介と、サンプルアプリの実行。

[スマホでスマホアプリを作る② 背景やテキストの追加](https://qiita.com/YasumiYasumi/ite

元記事を表示

【DroidScript】スマホでスマホアプリを作る④ 実行ボタン

##あらすじ
DroidScriptというアプリを使うと、javascriptベースの記述でスマホアプリが作れるらしいので、練習として「電子レンジワット数で加熱時間を換算するアプリ」を作る。

##前回までのおさらい
スピンボタンとシークバーを実装し、計算に必要なデータ入力が揃った。あとは計算するだけ。
![Screenshot_20201121-154732.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/708687/2fec0fe1-b3cd-dbfd-78cf-9f2f7971bf97.png)

[スマホでスマホアプリを作る① Hello World!](https://qiita.com/YasumiYasumi/items/10796071033a9cefc0b4)
[スマホでスマホアプリを作る② 背景やテキストの追加](https://qiita.com/YasumiYasumi/items/1569dcc891217a2c92d7)
[スマホでスマホアプリを作る③ スピンボタンとシークバ

元記事を表示

【DroidScript】スマホでスマホアプリを作る③ スピンボタンとシークバー

##あらすじ
DroidScriptというアプリを使うと、javascriptベースの記述でスマホアプリが作れるらしいので、練習として「電子レンジワット数で加熱時間を換算するアプリ」を作る。

##前回までのおさらい
アプリ画面の作成に着手。
![Screenshot_20201121-154732.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/708687/30930e9d-2365-01f1-fd0e-e333501ffacc.png)
前回は画像の上から2行目まで作成。タイトルテキストとドロイド君を設置、ドロイド君をタップするとスマホが振動してアプリの説明がポップアップするようにした。

[スマホでスマホアプリを作る① Hello World!](https://qiita.com/YasumiYasumi/items/10796071033a9cefc0b4)
[スマホでスマホアプリを作る② 背景やテキストの追加](https://qiita.com/YasumiYasumi/items/156

元記事を表示

【DroidScript】スマホでスマホアプリを作る② 背景やテキストの追加

##あらすじ
DroidScriptというアプリを使うと、javascriptベースの記述でスマホアプリが作れるらしいので、練習として「電子レンジワット数で加熱時間を換算するアプリ」を作る。

##前回のおさらい
ボタンをタップすると「Hollo World!」と表示されるサンプルアプリのコードを見た。
[スマホでスマホアプリを作る① Hello World!](https://qiita.com/YasumiYasumi/items/10796071033a9cefc0b4)

どうやら`lay`にパーツを放り込むことでアプリの画面をレイアウトできそう。

“`javascript
function OnStart()
{
lay = app.CreateLayout( “linear”, “VCenter,FillXY” );
app.AddLayout( lay );
}
“`
と言うわけで、自作アプリに向けてレイアウトを作成していく。

##まずは完成画面
絶望的な英語力や配置センスは気にしないでいただきたい(ToT)
![Screenshot_202011

元記事を表示

【DroidScript】スマホでスマホアプリを作る① Hello World!

##概要
DroidScriptと言うスマホアプリがある。

javascriptを記述して、オリジナルアプリを開発できるらしい。しかもスマホで!そりゃあスマホアプリなんだからそうなんだろうけど何か衝撃。

GASを覚えたことで、javascriptなら行けんじゃね?と、ちょっと触ってみることにした。

##DroidScript
Playストアから入手可能。

サンプルコードが大量にあるためヒントは多いけど、ググっても日本語のサイトはあまりヒットしないし、Qiitaの記事もゼロ・・・操作は手探りになりそう(´・ω・`)

サンプルコードを見ると、横スクロールのゲームやらメディアプレイヤーやらある他、カメラ、メール、USBなどなど、出来ることはかなり多い。

アプリの画面をPCに表示させる方法もあって、スマホでチマチマやらなくてもキーボードでコード入力できるみたい(ちな、今回は全てスマホから操作)。

基本操作は全て無料!プラグインが豊富で、APKファイルへのビルドやブルートゥース対応など、一部のプラグインが有料になっている。

##目的
以前に、WEBアプリ導入の練習で「電子レンジワ

元記事を表示

ConstraintLayout に新しく追加された Carousel を使ってみた

[ConstraintLayout 2.1.0-alpha1](https://androidstudio.googleblog.com/2020/11/constraintlayout-210-alpha-1.html) に Carousel というものが導入されたので、何ができるのかとどのように使うのかを書いていきます。
(Carousel は alpha1 で入ったばかりの仕組みなので、大きく変更されることがあり得ます)

## Carousel の仕組み
過去に似たような実装をしたときに書いていますが、ベースのなる状態と左右に動かした状態の 3 パターンを用意しておき、アニメーションでスワイプの動きをして中身を動かしているように見せるという方法になっています。

https://qiita.com/Nabe1216/items/0ca12aa377fc7687c9c0

## 基本的な実装
仕組みでもあるとおり、ベースとなる状態と左右に動かした時の 3 パターンの状態を定義し、それらをアニメーションさせる感じになります。

まずは MotionLayout で使う View の

元記事を表示

Android studio:Kotlin:画面遷移

参照:

Android(Kotlin)入門講座:インテント(Intent)を使った画面遷移について

ファイル→新規→アクティビティ→からのアクティビティを作る。

Activity NameをSecondActivityなど適当につけ、中身を作る。

MainActivity.ktにまず以下をインポート

“`kotlin:MainActivity.kt
import android.content.Intent
import android.view.View
“`

なにかボタンを押したときに遷移する場合は以下のように記載。

“`kotlin:MainActivity.kt
// 実行ボタンタッ

元記事を表示

HELP!!⇒動いたなう【Kotlin】 端末起動時にレシーバーで受けて処理が出来ない。。教えてください。

かれこれ相当な時間を要したが、未だに解決出来ず助けて欲しいです。。。

# やりたいこと: 端末起動時にアプリからローカル通知を設定し直す
Android端末は再起動すると、
セットしてたAlarmManagerの処理は揮発しちゃうんですよね。。

そこで下記記事を見ていろいろやっては見たのですが
[Android の AlarmManager を改めて整理してみる](https://qiita.com/upft_rkoshida/items/8149605f751137b4c21c)
[does Alarm Manager persist even after reboot?](https://stackoverflow.com/questions/12034357/does-alarm-manager-persist-even-after-reboot)

アプリ起動時にレシーバーで受けるところがそもそも出来ていない様です
(レシーバーでトースト表示しにかかってますが一向に反応なし。。)

プロジェクト作りなおして、端末再起動時のレシーバーでの取得部分のみ最小限でやってみたのが下

元記事を表示

Gradle の Source Dependencies で Android Library を参照したら、ビルド不能になった

gradle の [Source Dependencies](https://blog.gradle.org/introducing-source-dependencies) 機能を使うと git の gradle プロジェクトをソースコードのまま参照出来て便利です。しかし、Android Library をソースコード参照したところ、ビルドが全くできなくなりました。

`./gradlew assemble` しても、参照先の build.gradle のタスクが一切走りません。結果として、必要なクラスが一切見つからない状態となってしまいます。

どうもエラーが内部で握りつぶされているようで、–info や –stacktrace オプションを付けても原因がまったく分かりません。

調査に挫折しかけたのですが、なにかの条件(再現できない…)で偶然 `SDK location not found.` のエラーメッセージが流れてきたため、原因が分かりました。参照先の Android Library プロジェクトで ANDROID SDK のパスが見つからず、 Android Plug

元記事を表示

Flutterチュートリアルを咀嚼する part1 -FlutterはWidgetまみれ-

Flutterって一つのソースを書くだけでiOSもAndroidもアプリ作ってくれるんだって
すごいなー
勉強してみよう

#対象のチュートリアル

https://codelabs.developers.google.com/codelabs/first-flutter-app-pt1#0

#コピペしてできあがったもの
スタートアップ企業の名前をつけてあげるために単語二つの組み合わせをリスト化してくれるアプリ

![スクリーンショット 2020-11-17 16.02.22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/283826/a192fc3c-b4cb-941a-5006-90fcf9a06acb.png)

#ソースコード

“`dart:main.dart
import ‘package:flutter/material.dart’;
import ‘package:english_words/english_words.dart’;

void main() => runApp(My

元記事を表示

Flutter実装時にお世話になったページ 2020/11/19

## なにか

毎回、同じ問題に、同じ検索して、同じページで解決してるので。。。

## “`Image.network“` や “`NetworkImage“` で画像が表示されない場合がある

特に画像が大量にある画面でたまに表示できてない画像があった。で、ログが流れる。

> ════════ Exception caught by image resource service ════════════
> Connection closed before full header was received, uri = https://xxxxxx

[Stack Overflow “Network Image – Connection closed before full header was received…”](https://github.com/flutter/flutter/issues/25107#issuecomment-655655719)

これで解決する前に、同じページの別のコメントや

[I globally overrode the Htt

元記事を表示

AOSP system/btでEclipse IDEを使う(中途半端)


README.mdより。
### Eclipse IDE Support

1. Follows the Chromium project
[Eclipse Setup Instructions](https://chromium.googlesource.com/chromium/src.git/+/master/docs/linux/eclipse_dev.md)
until “Optional: Building inside Eclipse” section (don’t do that section, we
will set it up differently)

2. Generate Eclipse settings:

“`sh
cd system/bt
gn gen –ide=eclipse out/Default
“`

3. In Eclipse, do File->Import->C/C++->C/C++ Project Settings, choose the XML
location under system/bt/ou

元記事を表示

THETA Photo Dog [THETA Plug-in OLED活用]

#はじめに
リコーの[Yuuki_S](https://qiita.com/Yuuki_S)です。
弊社では[RICOH THETA](https://theta360.com/ja/)という全周囲360度撮れるカメラを出しています。
RICOH THETA VやTHETA Z1は、OSにAndroidを採用しており、Androidアプリを作る感覚でTHETAをカスタマイズすることもでき、そのカスタマイズ機能を「プラグイン」と呼んでいます。(詳細は本記事の末尾を参照)。
***
プラグイン開発ができるTHETAには、VとZ1の二種類があります。
このうち、Z1はフラッグシップ機。
1.0型裏面照射型CMOSイメージセンサーを搭載しRAW撮影も出来るスグレモノです。

これまでずっとVでプラグイン開発をしてきた自分ですが、ついにZ1を利用する機会がやってきました!
Z1を手にして、さて、どんなプラグインを作ろうかとまじまじと見比べてみます。
3世代Dagger Hilt の Context まわりでハマったこと

Dagger Hilt では、Context クラスが必要な場合のために、`@ApplicationContext`アノテーションと`@ActivityContext`アノテーションが用意されています。
[Hilt を使用した依存関係の注入  |  Android デベロッパー  |  Android Developers](https://developer.android.com/training/dependency-injection/hilt-android?hl=ja#predefined-qualifiers)
Context を使う上でハマったポイントがあったので、備忘録として残しておきます。

# 事例

例えば SharedPreferences をラップした、`SharedPreferencesWrapper`クラスを`MainActivity`で使う場合を考えてみます。

“`kotlin:MainActivity.kt
@AndroidEntryPoint
class MainActivity : AppCompatActivity() {

@In

元記事を表示

Flutter実装時にお世話になったページ 2020/11/18

## なにか

毎回、同じ問題に、同じ検索して、同じページで解決してるので。。。

## ContainerのBottomにだけ、枠線を入れたかった

[Stack Overflow “How to add a border to a widget in Flutter?”](https://stackoverflow.com/a/53680045)

## url_launcherでカスタムURLスキーマを使用したアプリ起動ができなかった(Android)

AndroidManifestまで意識が行かなかった。。。

[Stack Overflow “[url_launcher] When targeting API 30, canLaunch always retrurns false”](https://github.com/flutter/flutter/issues/63727#issuecomment-691066239)

## flutter upgradeしたら、ビルド通らなくなった。。。

こんなエラーが出るようになりました。

“`
Flutter Row()

元記事を表示

HMS Location Kit Android SDKの導入方法について

#1. Location Kitの概要
[Location Kit](https://developer.huawei.com/consumer/jp/hms/huawei-locationkit)はHMSの位置情報関連のサービスを提供するSDKです。
今回はLocation Kitの機能と使用方法について説明したいと思います。

##1.1 機能
Location Kitは以下の3つの機能を提供しています。

**1. ハイブリッド測位による位置情報の取得**
**2. ジオフェンス機能**
**3. 運動状態の識別機能**

それぞれの機能の概要と使用シナリオについては以下で紹介します。

###位置情報の取得
Location KitのAPIを使用することで、ハイブリッド測位(GNSS, WiFi, 基地局)による位置情報の取得ができます。
また、東京、大阪、名古屋などの主要都市でSuperGPS機能がサポートされ、位置情報を取得する際には、ロードサイドが分かるように精度よく位置情報を取得できます。

**利用シナリオ**
・現在地の取得
・タクシー予約アプリの場合、道路のどの側

元記事を表示

AutoCompleteTextViewにフォーカスを当てたままキーボードを非表示にする

## 環境

Android Studio 4.1.1
Build #AI-201.8743.12.41.6953283, built on November 5, 2020
Runtime version: 1.8.0_242-release-1644-b01 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows 10 10.0
GC: ParNew, ConcurrentMarkSweep
Memory: 4029M
Cores: 8
Registry: ide.new.welcome.screen.force=true, external.system.auto.import.disabled=true
Non-Bundled Plugins: org.jetbrains.kotlin, com.developerphil.adbidea

## AutoCompleteTextViewとは

キーボードによるインプットに対して、
自動で文字を補完してくれる機能を備えもったEditTextのことです。

通常、

元記事を表示

Github Actionsを使って自動テストをした話

# はじめに
今回はGithub Actionsを使って自動テストをした話を紹介していきたいと思います。

# 自動テストのタイミング
PR出したタイミングとかPR出したブランチにpushしたタイミングでいいのでは?
と思う方もいるかもしれません。

Github Actionsはpublicなレポジトリだと無料ですが、Organizationで使うと従量課金制になっています。
テストの量が多い場合、push毎にCIを走らせてしまうととんでもない実行時間になってしまいます。

またPR出したタイミングで修正があることに気付き新しくpushした場合、その部分はグリーンになっている保証はありません。

なので今回はレビュワーがapproveしたタイミング(LGTMしたタイミング)で自動テストを回すようにしました。

PR出す→修正がある場合は新たにpush→レビュワーがapprove→テスト→成功でも失敗でもslackに通知

# レビュー時にテストをする方法
自動テストのやり方などはググればたくさん出てくるんですが、approveされたらという条件が合致するものがなかったので苦労しました

元記事を表示

【Android】なんとかAndroidアプリのaabファイルのビルドに成功した件

【Android】GooglePlayアプリのkeystoreパスがわからず新規アプリ登録した件
https://qiita.com/technopixelinc2019/items/e7150caeadd1aff6ba4d

上記の記事の続きです。
初心者向け、かつ自分への備忘録として記載残しておきます。

ビルドしようとすると「Gradle build failed」と出るので調べてみる。
【参考URL】

参考ページによると、Unity2019からはBuild Settingsの項目から「Build System」が削除されたとの事。以前のver.なら「Systemの項目をInternalに設定」で良かったらしい。

Unity2019以降の場合は、Build Settingsの「Export Project」にチェック

元記事を表示

OTHERカテゴリの最新記事