お知らせ

現在サイトのリニューアル作業中のため、表示が崩れているページが存在することがあります。

なんとなくアプリを作りたくなったので。Hello worldするとこまで。

確認環境

Env Ver
Windows 11 Pro 22H2
Intel VT-x 有効
Hyper V 有効

手順

  1. 公式サイトからインストーラーを落としてくる
  2. NextとAgree連打でインストールする
  3. Empty Activityを選ぶ
    1. 作成するプロジェクトはEmpty Activityを選ぶ
  4. Tools→Device Managerでデバイスがなんか入ってるのを確認する
    1. Tools→Device Managerでデバイスがなんか入ってるのを確認する
  5. 再生ボタンみたいなやつを押す
    1. 再生ボタンみたいなやつを押す
  6. しばらくするとエミュレーターが起動するのでドロワー中央のAndroidアプリを起動
    1. ブランクのアプリみたいなアイコンをタップ
  7. 画面が出てくればOK
    1. Hello worldが表示される

Windows 10及びWindows 11で通知バナーが出てこなくなる場合の対処法。

発生条件

  1. OSとアプリの通知設定は有効
  2. 通知バナーは出ないが通知の一覧には出ている
    1. 通知の一覧には通知が出ている
  3. ノートPCでPC本体のディスプレイの電源を切った状態でマルチディスプレイを利用している
  4. スリープ復帰後など、外部ディスプレイが復帰したタイミングが影響している

解消方法

OSを再起動すると解消する。

推定原因

恐らくOS側がモニタの認識に何かしら失敗していて通知バナーを表示する座標指定に失敗しているような気がしている(稀にモニタの境界に表示されることがあるため)
恐らくモニタをつけっぱなしにしていれば起きないと思われる。

runasでは上手く出来ないっぽいのでPowerShellを呼んで実行する。管理者実行したいコマンドを分けたい時に活用できる。

確認環境

Env Ver
Windows 11 Pro 22621.1413

サンプルコード

powershell start-process <ここにコマンド> -verb runas

備考

PowerShellのリファレンスに沿って書くなら大文字小文字を書き分ける方がより正しいが、基本的に大文字と小文字を区別しないため、どっちでも動く。

powershell Start-Process <ここにコマンド> -Verb runAs
投稿日:OS::Windows言語::batファイル

変数の文字列を文字列で置換

@ECHO OFF

SET text="hoge piyo fuga"
REM 置換文字を標準出力
ECHO %text:hoge=XXX%
REM 置換文字を変数に設定
SET replaced_text=%text:hoge=XXX%
ECHO %replaced_text%

@ECHO ON

変数の文字列を変数の文字列で置換

SET "var=value"SET var="value"の差は後述のAppendixを参照
CALLを付けているのは、これがないと変数名そのものが文字列として扱われるため

@ECHO OFF

SET "text2=foo bar baz"
SET "search_word=baz"
SET "replacer=ZZZ"

REM 置換文字を標準出力
CALL ECHO %%text2:%search_word%=%replacer%%%
REM 置換文字を変数に設定
CALL SET replaced_text2=%%text2:%search_word%=%replacer%%%
ECHO %replaced_text2%
REM 検索文字列を削除
CALL SET replaced_text3=%%text2:%search_word%=%%
ECHO %replaced_text3%

@ECHO ON

Appendix

SETコマンドの記述方法を変えた場合の出力結果の差について

SET "var=foo bar ZZZ" SET var="foo bar ZZZ"
foo bar ZZZ "foo bar ZZZ"

参考