AQUOS sense9でスマホ用電子証明書が利用できない

AQUOS sense9でスマホ用電子証明書を利用しようとした。型番はSIMフリー版のSH-M29。
マイナポータルのFAQ 「Androidスマホ用電子証明書に対応しているスマートフォンを教えてください。」を調べると、「○その他」のところにしっかり「AQUOS sense9 SH-M29」と書かれている。(2026年8月23日確認)
マイナポータル(Ver.91 執筆時点で最新版)のアプリを開くと上部に「スマホ用電子証明書が利用できます」あるいは右下のメニューを開くと「スマホ用電子証明書を申請する」というボタンがあるはずだが、どちらもない。

普通にマイナンバーカードを使ってのログインなんかはできているのでNFCがオフになっている、なんでのではないはず。
FAQに「画面ロック中はロック」はオフにする、というのもあったので、それも試したがダメだった。
OSが15なのがだめなのかなあ。でもsense9がスマホ用電子証明書に対応したのは2025年1月くらいからのようなので、OSは関係ないと思うのだがなあ。うーん。

明後日の8月25日からマイナポータルアプリがマイナアプリというのに代わるそうなので、それで解決すればいいけどなあ。

Sharp SHV48で楽天モバイルのSIM

中古でSharpのSHV48を買った。2020年6月に発売されたau向けのAndroidスマホ。 https://jp.sharp/products/shv48/
お風呂用に買ったので、SIMフリー化とか、指紋認証とか、NFCとか、全然気にせずに買ったのだが、買ってから指紋認証とNFCはあるとよかったかも、と少し後悔した。

さて、メインで使うつもりはまったくないのだが、予備機ということで楽天モバイルのSIMを使えるようにしてみた。
少し手こずったので、その顛末。

続きを読む

NoxPlayerの仮想ディスクファイルを圧縮

Android EmulatorであるNoxPlayerの件。
仮想ディスクのファイル(vmdkファイル)が肥大化してしまった。「クリーンアップ」をしてもそれほど小さくならない。
仮想Android上でディスクをゼロで埋めてやればいいんだろうけどなあ、そんなAndroidアプリはないのかなあ、とググっていて見つけたサイト。

NoxPlayerで肥大化したディスクを縮小する

へえ、nox_adb.exeなんてのがあるんだ。
探してみたら確かにあった。
C:\Program Files (x86)\Nox\bin\nox_adb.exe

じゃあ、これを使ってディスクをゼロで埋めてから、「クリーンアップ」すればいいんじゃないかな?

  1. 仮想ディスクを圧縮したい仮想Android(エミュレータ)を一つ起動
  2. ホスト(Windows)上でコマンドプロンプトを起動(「cmd」を検索して「コマンドプロンプト」を起動するのが簡単)
  3. nox_adbを起動
    "C:\Program Files (x86)\Nox\bin\nox_adb" shell
  4. ここで、正常なプロンプトが返らずに「7」のようなゴミが返ってきた。Enterを数回殴打し、正常なプロンプトである「#」が返ってくればOK
  5. /dataの下にでもゼロで埋めた適当なファイル(例えばhoge)を作成
    cd /data
    dd if=/dev/zero of=hoge bs=1M
    
  6. ディスクがあふれてddが終了したらddで作ったファイル(hoge)を削除
    rm hoge
  7. 仮想Androidを終了(nox_adbも落ちる)
  8. Noxウィジェットの「クリーンアップ」を実行
  9. 終わるのを待つ

【補足】
「"C:\Program Files (x86)\Nox\bin\nox_adb" shell」といちいち打つのは面倒なので、環境変数 Path に「C:\Program Files (x86)\Nox\bin」を追加しておくとよいだろう。

  1. スタートメニュー ⇒ 設定(歯車マーク)
  2. システム ⇒ 詳細情報 ⇒ システムの詳細設定
  3. 環境変数 ⇒ Pathを選択 ⇒ 編集 ⇒ 新規 ⇒ C:\Program Files (x86)\Nox\bin ⇒ OK

こうしておけば

nox_adb shell

だけで仮想Androidに入れるようになるはず。らくちん。

楽天モバイル自社回線に繋がらない

楽天モバイルのサービスエリアマップを見て、ここなら自社回線に繋がるだろうという場所、それも屋外で試してみた。
再起動、機内モードOnOFF、モバイルデータ通信OnOffなどを試してみたが、いくら試しても、何度試しても常に「パートナー回線エリア接続中」となってしまった。
楽天の自社回線というのは幻なのか?
1GB以上使う予定はないので実害は全くないのだが、やっぱり気になる。

ASUS ZenFone Max (M2)で楽天モバイルRakuten UN-LIMIT VI

楽天モバイル公式の「楽天回線対応製品」によると正式な対応機器には含まれていないのだが、「ご利用製品の対応状況確認」というページによると、「110/119通話などでの高精度な位置情報測位」以外は使えるとのこと。
へえ。
データ通信量1GBまでは基本料含めゼロ円で、楽天Linkというアプリを使えば国内通話料・SMSも無料で、申し込んだ時の事務手数料なども無料で、必要なのはユニバーサルサービス料(今は毎月3円)だけでよいそうだ。特に費用は発生しないようなので、ASUS ZenFone Max (M2)はSIMカードが2枚差しできることもあり、今使っているデータ専用のAEON SIMのサブとして試してみることにした。

続きを読む

K-9 Mailでフォルダーの重複

スマホ(Android)を買い替えた。
OSが4.4.4だったのだが、いろんなソフトが対応しなくなったため。
中でも、とあるネット銀行のセキュリティーソフトのバージョンアップに対応できなくなったのがトドメを刺した。
それなりにはまだ使えており、残念だが買い換えるしかない。

で、スマホを買い替え(OSは9)て、いろいろとデータやソフトを移行させのだが、メーラーのK-9 Mailがちょっとおかしなことになった。
設定のインポート機能を使って設定をインポートしたところ、一つのアカウントでは「受信トレイ」が、別のアカウントでは「ゴミ箱」トレイが、それぞれ二つずつ表示されるという状態になってしまった。二つのフォルダーはそれぞれ普通に動作している。特に動作上の問題はないのだが、フォルダー一覧で見たときに鬱陶しい。
設定のインポートをやり直したりしてみたが、効果はなかった。
アカウントを設定し直せば直るかもしれないが、それはかなり面倒。
ググっても見当たらない。

続きを読む

AndroidでFrameLayoutの上にボタンを重ねるとボタンが半透明になってしまう件

結論

【解決したい課題】AndroidでFrameLayoutの上にボタンを重ねると、ボタンが半透明になってしまい超見難いのをどうにかしたい。
【解決方法】アプリのスタイルを見直せばよい。


詳細

FrameLayoutにSurfaceViewを作ってそこに画像を描くアプリを作っていた。
操作用のボタンを設置しようとして、ググったところFrameLayoutを使って重ね合わせるのが定石だということでやってみた。
わかりやすくするため、肝の部分だけソースコードを書くとこんな感じ。

activity_main.xml その1:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#ff000000" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:gravity="center" >
            <Button
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="ボタンですよ" />
        </LinearLayout>
    </FrameLayout>
</RelativeLayout>

MainActivity.java その1:

package com.example.test1;

import android.os.Bundle;
import android.app.Activity;

public class MainActivity extends Activity {
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
	}
}

このアプリの画面は次の通り。ボタンが半透明になっていることがわかるだろうか。

その1

続きを読む

久しぶりにAndroidアプリ開発

ずいぶんご無沙汰していたのだが、久しぶりにAndroidアプリ開発をほそぼそと再開していた。
以前はLinux(32ビット)上で開発していたのだが、Android Studioをはじめいろんなツールが64ビットのLinuxでないと動かないので、ツール導入時点で立ち止まっていた。
今使っている64ビットのWindows 10であれば問題はないのだが、JAVA (JDK) を入れたり、いろんなツールを入れたりというのはなんかやだなあとか、VMwareを使って仮想環境から立ち上げるのも面倒だなあとか、いろいろ理由をつけて逃げ回っていた。
続きを読む