ソフトウェア開発

Android

【Android】pixel dpの相互変換

ndroidアプリ開発では、ビューのサイズやマージン、パディングを設定する際に、ピクセル(px)と密度依存ピクセル(dp)の相互変換が重要になります。以下はその方法です。ピクセルからdpへの変換javapublic static int p...
Android

【Andorid】プロセス死によるクラッシュを「ガード処理」と「ADBコマンド」で封じ込める

1. はじめに:バックグラウンド復帰時の「稀な」クラッシュアプリを操作中に別のアプリへ切り替え、しばらくして戻ったときに突然アプリが終了してしまう。この再現性の低いエラーの正体は、OSによるメモリ解放(プロセス死)です。2. 最強のデバッグ...
Android

【Android】Android 10以降で特定のWi-Fiに自動接続する(WifiNetworkSpecifierの実装)

普段、M5StackをWi-Fiルーター(アクセスポイント)として実験を行っています。毎回設定画面からWi-Fiを切り替えるのは手間なので、アプリ内から指定のSSIDへ自動接続する機能を実装しました。必要なパーミッションAndroid 10...
C#

【RaspberryPi】Mono + WinFormsでBorderの色や角丸が反映されない問題の解決策と、Avalonia UIへの移行

導入Raspberry Pi上でMonoを使用してC#(Windows Forms)アプリを動作させた際、デザイン面で以下のような挙動に悩まされました。Borderの色を何に指定しても、すべて黒色で描画される。カスタムコントロールで実装した...
ICカード・NFC

【調査】RFID/ICタグの基礎知識

電源による3つの分類それぞれの特徴を比較表にまとめました。特徴パッシブタイプアクティブタイプセミパッシブタイプバッテリーなし(リーダーの電波で駆動)あり(自ら発信)あり(センサー等に利用)通信距離数cm 〜 10m程度数10m 〜 100m...
ICカード・NFC

【調査】Suicaデータフォーマット

uicaのデータフォーマットは、ソニーの非接触ICカード技術「FeliCa(フェリカ)」をベースに、鉄道独自の「サイバネ規格」というルールでデータが配置されています。利用履歴のデータ構造(1ブロック16バイト)Suicaの履歴は1件につき1...
Android

【Android】imageボタンが押された時の波紋の色を変更する

imageボタンが押された時の波紋の色を変更するには、カスタムのリプル(波紋)エフェクトを定義して、ImageButtonに適用する方法がありますカスタムリプルエフェクトを定義するres/drawableディレクトリにカスタムリプルエフェク...
M5Stack・Arduino

【M5】M5STACK<->M5STICK間でUDP通信を行う

M5STACKおよびM5STICKのボタンを押すと値をUDP経由で送信し、受信したデバイスで受信した値を表示する。構成プロジェクト名:Wifi_UDP_Master_M5Stack.ino/Wifi_UDP_Slave_M5StickCPl...
M5Stack・Arduino

【M5】M5STACK<->M5STICK間でBLE通信を行う

M5STACKのボタンを押すと値をBLE経由でM5STICKPlusに送信し、 M5StickPlusでは受信した内容を画面に表示する構成プロジェクト名:BLE_Sample_M5Stack.ino/BLE_Sample_M5StickPl...
M5Stack・Arduino

【M5】FFT周波数成分の表示

M5StackでSAMPLING_FREQUENCYでマイクを測定し、FFTして周波数成分をLCDにグラフ表示する。構成プロジェクト名:M5-Unit-MICデバイス:M5STACK
Android

【Android】ファイルを読み込んだ時に順番が読み込んだ順になります。種類別とかファイル名順に一覧表示する

Javaでは、Arrays.sort() や Collections.sort() を使用して簡単にソートできます。以下に具体的な例を示します:ファイルを名前順にソートする場合javaimport java.io.File;import j...
Android

【Android】AlertDialogの「OK」ボタンを入力状態に応じて動的に無効化する

前回の記事ではダイアログにテキスト入力を追加する方法を解説しましたが、今回はさらに一歩踏み込んで、**「未入力のときはOKボタンを押せないようにする(バリデーション)」**機能を実装してみましょう。ユーザーの誤操作を防ぎ、アプリの堅牢性を高...