Surface Pro 7の気に入らない点

最近感じるSurface Pro 7の気に入らない点をまとめる。多分これらのうちには、Surface固有の問題ではなく、Windows 11の問題も含まれていると思う。

  • 何かのはずみでリュックの中でスリープが解除されていることがある。
    • 背中が熱いなと思うときはだいたい、リュックの中でSurfaceがファンをぶん回しながらものすごい熱を放っている。
  • スリープから立ち上がった直後、マウスのクリックやキーボード入力に反応しないときがある。
    • おそらくexplorer.exeに問題があるのだと思う。ファイルを選択したり開いたりもできないし、タスクバーのボタンも反応しないので、アプリも立ち上げられない。ちなみにマウスカーソルだけは動く。
  • スタンドに滑り止めがない。
    • そのせいでペンで書き込みしているときに知らぬ間に後ろに滑っていって、最終的に教卓の上から落ちたことがある。しかしこれは教卓の天板に壁?がないのが悪い。
  • Surface Penが反応せず、しばらく経ってから「電池の残量が少なくなっています」の通知が出た。
    • これは今日の出来事。
    • 書けなくなってから通知されても遅い。書けなくなる少し前に通知してくれ。

こういった事情で、最近の満足度は高くない。新しいSurface Pro 8なら…と思いつつも、7がこんな体たらくでは8を試そうという気にもなれない。

Teams + Power Automate関連のブログを書きかけていたのだけど、フラストレーションの行き場がなくなって、先にこちらを書き上げた次第。

Surface Pro 7を授業で使ってみた感想

もう大晦日が終わって新年になってしまった。毎年恒例の一年の振り返り記事でも書くかと思ってサイトを開いたら、2021年にまだ一つもブログ記事を書いていなかったことに気づいた。振り返りの一つ前の記事がその前の振り返りというのはみっともない気がするので、書こうと思ってほったらかしていたネタでお茶を濁すことにする。

去年(2020年)にSurface Pro 7を入手した。これには3つの動機があった。まず、Windowsタブレットがタブレット端末としての完成度をみること、次に特にWindowsタブレットが授業用途で実用に耐えるのかどうかを試すこと、そして勤務校で導入されたMicrosoft Teamsとの相性を見極めることである。Windowsタブレット代表として、Surfaceをピックアップしたわけである。Surface Pro 8がすでに出たこのタイミングで今更という感じだが、それぞれの観点で感想をまとめてみる。

なお、以下はタブレット端末としてSurfaceを使った際の感想であり、ラップトップPCとして使った際の感想ではないことを予めお断りしておく。

Surface Pro 7はタブレット端末として完成されていたか

昨年度初頭までは、研究・授業のためのタブレット端末としてiPad Proを使ってきた。研究では、論文やPDF資料への書き込みといった用途で、授業では教科書への書き込みや、動画・音源の再生に加えて、オンライン授業・ハイブリッド授業でTeamsに接続するといった用途で、iPadを使ってきた。ただ、個人的な好みとしてメインで使用するデバイスをすべてWindows(あるいはAndroid)に揃えたかったので、タブレット端末もWindowsタブレットに置き換えできないかということを考えていた。

タッチ精度やSurface Pen、スタンドといったハードの面ではかなり頑張っているように思うが、やはりソフト由来の使いにくさが気になった。WindowsというOSが、タブレットに最適化されていないのが一番の問題点だと思う。タイプカバーをひっくり返したり外した状態で、指やSurface Penでウインドウを操作する、ファイルを開くといったOSの操作をするときに何かしらのストレスを感じることが多かった。もちろん、こういったストレスはタイプカバーを使ってラップトップ化したときに解消されるのだけど、それだとタブレットではないよな…っていう。

PDFへの書き込みも、Drawboard PDFやMetamoji Noteを使ってみたが、どれもiPad × Apple Pencil(× GoodNotes)の組み合わせほど完成されていない印象を受けた。iPadに優っていた点としては、ファイル操作の直感性くらいだろうか。

Surface Pro 7は授業用途で実用に耐えるか

では、授業で使ったときの使い勝手はどうか。ラップトップPCと同じことができるので、ディスプレイの設定(複製・拡張の切り替え)や、スピーカ・マイクの設定、ウインドウの配置といった設定を細かく調整することができるのはよかった。これらの機能が制限されるiPadでは、教室や授業によってこれらの設定を変える際に不便さを感じることもあった(自分がiPadを使いこなせていなかっただけかもしれないが)。

例えば、教科書を映しておいて、その上に動画・音源再生用の小さなプレーヤーソフトを常に前面で表示するといったことは、ほぼほぼラップトップPCのSurfaceだからこそできることだと思う(自分がiPadを以下略)。

教科書に書き込みをするという点では、たいていは遅延などの問題もなく書けているが、突然アプリがフリーズしたりクラッシュしたりといったことがあったので、そう言う意味では、iPad × GoodNotesほど安定して動かない印象である。

ちなみに、Surfaceの画面をプロジェクタに投影する際は、Windowsで使用できるMicrosoft謹製のワイヤレスディスプレイアダプタが便利である。かさばらないので、教室移動があっても気軽に持ち運びができる。タブレットを操作しながら机間巡視もできる。
(ただ、i7モデルだと、バッテリ持ちがよくないので、机間巡視を考えるなら、CPUはあまり欲張らない方がいいと思う。)

Surface Pro 7とMicrosoft Teamsとの相性はどうか

先述したように、SurfaceはほぼほぼラップトップPCなので、当然Teamsの機能がフルに使用できるので、そこに不満はない。画面上に一度に表示できる情報量(学生に提示するための情報量というより、教員が操作するためのメニュー表示などの情報量)もiPadよりSurfaceの方が大きいので、今ではTeamsでオンライン授業やハイブリッド授業を配信する用途では、もっぱらSurfaceを使っている。

不満は1点、Teamsの表示画面の拡大・縮小がピンチイン・ピンチアウトで行えないという点だ(これはiPadでもできない。けどもしかしたら自分がiPadを以下略)。授業の流れや課題の説明などをTeamsのチャネルに投稿するのだけど、それを学生に見せる際に、100%表示ではプロジェクター上で字が小さすぎて読めないので、拡大をしないといけない。そのとき、いちいちマウスをポチポチするか、キーボードのショートカットキーを叩かないといけないのはとてもストレスだった。タッチパネルをピンチイン・ピンチアウトするだけで拡大・縮小ができるようになってもらいたいと思う。

あと、それほど頻繁に使ったわけではないが、提出物にペンで書き込みをするといった、タブレットならではの機能は、思ったほど気持ちよくは動いてくれなかった。Apple Pencilを使う分、iPadの方が使い心地がよかったように感じた。

まとめ

タブレットとしてSurface Pro 7を使ってみた感想を総括すると、できることも多いけど、行き届かないところもあって、全体的に可もなく不可もなく、という印象。Surfaceの名誉のために補足しておくと、ラップトップPCとしては、キーボードとタッチパッドがショボいことを除けば、満足しています。

これ書いてて2021年の振り返りが間に合わなくなってしまった。これから書きます。。

タブレットの画面を無線でミラーリングする(安上がりな)方法

先日、学内の研究授業で、教員(私)がPCの操作中教卓から動けなくなってしまっているので、タブレットを使うなどして教卓にかじりつきにならないよう工夫した方がいいというご助言をいただいた。そこで授業用にiPad Pro(11-inch)を(自腹で)購入した。机間巡視・支援をしながら、タブレットの画面や書き込みを、無線でミラーリングできたらいいな、と思ったのだ。

調べてみると、どうもAppleにはAirPlayという無線規格があって、それに対応したデバイス(Apple TVなど)を使えば無線で画面がミラーリングできるらしい。しかし、自分は今回買ったiPad以外にApple製品は持っていないし、今後買う予定もないので、わざわざApple TVを買うのはもったいないと思ってしまう。なんとかならないかと思って考えたり調べたりした結果、iPadなどのタブレット端末の画面を他のPCに共有して、その画面を投影するという方法に至ったので、ここにメモしておく(ポンチ絵はイメージ)。

準備したもの

  • PC
  • タブレット(今回はiPadを使ったけど、それ以外のタブレットでもOK)
  • プロジェクタとスクリーン、もしくはセンターモニタ
  • PCとプロジェクタ・センターモニタを接続するためのケーブル
  • Zoom(オンラインミーティングアプリ)
    • Zoomはオンラインでミーティングを行うためのサービスで、どうもSkypeよりもいろんな面で高機能らしい。今回はこのZoomアプリを画面共有のために使用する。
    • ちなみに、Skypeも画面共有ができるので、今回の記事と同様のことができるけど、そのためにアカウントを2つ取得しないといけないので、ちょっとめんどくさい。
    • TeamViewerというソフトでも同様のことができるけど(参考)、試したところ毎回動作したりしなかったりだったのと、iOS版アプリの評価がイマイチだったので、今回は使用を見送った。
  • PC用の有線/無線LAN環境
  • タブレット用の無線LAN環境
    • これらは同じネットワークである必要はない

手順

  1. まずはZoomアカウントを作成する。確かGoogleアカウントも使用可能だったはず。
  2. 次に、PCとタブレットにZoomをインストールし、アカウントにログインする。このあたりの手順はWeb上にたくさん情報があるので、詳細は割愛。
  3. ログインが済んだら、PCとタブレットで、個人(パーソナル)ミーティングスペースに入る。
    • Zoomはミーティング毎にIDが振られるのだけど、IDは基本使い捨てらしいので、毎回片方のデバイスでミーティングを立てて、もう片方のデバイスでIDを入力してミーティングに入らないといけない。それでは手間なので、 画面共有のみに使う場合は、恒久的に使える個人ミーティングスペースID(PMI)を使ってミーティングを始めたほうが、 操作が少なく済んで楽。
    • さらに操作を楽にするには、インスタントミーティング(ホーム画面の「新規ミーティング」を押して始まるミーティング)に、常にPMIを使用するよう設定する(参考)。そうすれば、アプリを開いて、ボタン一つで個人ミーティングスペースに入ることができる。
  4. 個人ミーティングスペースに入ったら、共有したい画面のデバイス(今回はタブレット)の上部にある、「共有」をタップし、一番上の「画面」をタップする。すると、もう片方のデバイス(今回はPC)に、タブレットの画面が表示される。

この方法のメリット

  • 教卓・ケーブルから自由になれる
    • これで教卓やAVボックスにかじりつき問題は解決される(はず)。あとは自分の腕次第。
  • PC・タブレット画面を同時に映すことができる
    • PC上のウインドウの一つにタブレットの画面が表示されるので、半分はタブレット画面、半分はずっと提示しておきたい資料を映す、といった柔軟な使い方ができる。
  • すべてのデバイスで同じネットワークに接続する必要がない。
    • 例えばFire TVなどの画面ミラーリングは同じネットワークに接続する必要があるが、意図せずして他のネットワークを拾ったりする(勤務校では無線LANに複数のSSIDがあって、たまに何かのはずみで切り替わっている)と、接続が切れてしまう。だけどこの方法ではZoomのサーバーを通して接続しているので、どのネットワークを拾っても接続は維持される(はず)。
    • ただし大学によっては、このようなアプリでの通信が制限されているかもしれないので注意。
  • お金がかからない。
    • Zoomは今のところ無料版でも十分な機能・性能があるので、PCさえ持っていれば、追加の費用はかからない。ただし、いつまで無料で使えるかは未知数。

この方法のデメリット

  • (特に接続直後)タイムラグがある。
    • 外部のネットワークを経由しているので、どうしても直接接続するよりも反応が遅い。
    • Web上では、Skypeよりも安定している、とった口コミも見かけたけど、実際のところ比べてどうなのかは、こちらでは未検証なのでわからない。
    • ただ、印象としては、接続後しばらくすると、かなり安定して動作するようになった(気がする)。
  • PCを持ち込まないといけない。
    • 自分はPCも毎回持参するつもりなので特に問題ないが、持っていくのはPCかタブレットどちらかにしたいという人には向かない方法だと思う。

おわりに

とりあえず今学期から試してみて、何かあったらここに追記したいと思います。

(続)Rで学生・生徒を指定した人数のグループに分ける関数

先日のNagoya.R #18で、以下の記事のグループ分け関数についてお話させてもらった。

Rで学生・生徒を指定した人数のグループに分ける関数

この関数について吉野睦さんから、もっと簡単に同じことができることを教えていただきました。この場をお借りして感謝申し上げます。ありがとうございました。ご提供いただいたコードを許可をいただいた上で以下に転載させていただきます。

rm(list=ls())

# エクセル名簿から貼り付けるとこんな感じ(改行だけ)

x <- c("
川口勇作
川口勇作
川口勇作
川口勇作
川口勇作
川口勇作
")
# こんな感じに縦に並んでいるものを貼り付ける

# 改行コードで分割する
x <- strsplit(x,"\n")[[1]]           # なぜかリスト形式になってしまうので[[1]]
x <- x[!nchar(x)==0]                 # 空文字列を取り除く

# ここからがメインルーチン
class <- 10
index <- rep(1:class,len=length(x))  # クラス番号生成
index <- sample(index)               # クラス番号をシャッフルする
x <- split(x,index)                  # クラス分けする
print(x,quote=FALSE)                 # 名前のダブルコーテーションを取って表示

流れとしては以下のとおり。

エクセルから、ダブルコーテーションなし、カンマなし、改行のみで貼り付けたことを想定し、

strsplit()関数で名前データ生成

あとはメインルーチンで、

クラス数を指定
rep()関数でクラス番号を生成
sample()関数でシャッフル
split()関数でクラス分け
print()関数で、ダブルコーテーションなし表示

自分はfor文の中でfor文を回すという効率の悪いやり方をしていた。以前Python Bootcampに参加したときにも感じたことだが、今の自分にはこういう効率の良いコードを書く能力が欠けているようだ。フィードバックをいただける環境に感謝。


【追記 2018/9/2】吉野さんから以下のような追加情報をいただきました。ありがとうございました。

最後の、

print(x,quote=FALSE)

を、次のように変更して頂くと、リスト形式がデータフレームに変更できます。

y <- lapply(x,function(z){c(z,rep("",max(sapply(x,length))-length(z)))})
xx <- do.call(cbind,y)
print(xx,quote=FALSE)

参加予定ですか ?(必須)



Rで学生・生徒を指定した人数のグループに分ける関数

【追記 2018/5/13】コードをWordpressに貼り付けたときに一部の文字(””)が違う文字として貼り付けられてしまっていることに気づきました。現状では、そのまま貼り付けただけではエラーになりますので、ご注意ください。 -> 解決しました。

【追記 2018/5/29】特定の人数でエラーを吐くバグを修正しました。バグをご指摘くださった田村さんありがとうございました。

【追記 2018/5/31】出力の”member”が”menber”になってました。どれだけ麺好きなんだ。ということで修正しました。

【追記 2018/8/24】この関数について、Nagoya.Rでもっと簡単に同じことができるというコメントをいただきました。詳しくはこちら


表題の件について。前々から作ろうと思っていたけど、近いうちにNagoya.Rをやることになりそうなので、話の種に作ってみた。

以下をRのコンソールに貼り付ける。

Windowsの方はこちら

groupfunc <- function(p){
	d <- as.vector(read.table("clipboard", header = F, sep = ",")[,1])
 
	#学生数
	n <- length(d)
 
	#余りの人数
	r <- n%%p
 
	#空の行列を作成
	if(1 <= r){
		tb <- matrix(, nrow = trunc(n/p), ncol = (p+1)) #余りが1以上であれば、余分に1列を追加
	}else{
		tb <- matrix(, nrow = trunc(n/p), ncol = p)
	}
 
	#余った学生がいなくなるまで1人多くサンプリング
	for(i in 1:trunc(n/p)){
		if(i <= r){
			for(j in 1:(p+1)){
				tb[i,j] <- sample(d, 1)
				d <- d[-which(d %in% tb[i,j])]
			}
		}else{
			for(j in 1:p){
				tb[i,j] <- sample(d, 1)
				d <- d[-which(d %in% tb[i,j])]
			}
		}
	}
	result <- as.data.frame(tb) 
 
	#空行の削除(参考:http://id.fnshr.info/2017/08/14/r-blank-row-col/)
	#	is_blank の定義
	is_blank <- function(x) {is.na(x) | x == ""}
 
	# すべてが空欄である行を探す
	unnecessary_row <- apply(result, 1,
													 function(x){
														 all(is_blank(x))
													 })
 
	# 「すべてが空欄である行」以外を残す(=空行の除去)
	result <- result[!unnecessary_row,]
 
	#見出し行に名前を付与
	namae <- "member.1"
	for(k in 2:ncol(result)){
		namae <- append(namae, paste("member.", k))
	}
	colnames(result) <- namae
	result
}

【追記 2018/5/13】Macの方はこちらを。Macでは動かないことをご指摘くださった田村さんありがとうございました!

groupfunc <- function(p){
	d <- as.vector(read.table(pipe("pbpaste"), header = F, sep = ",")[,1])
 
	#学生数
	n <- length(d)
 
	#余りの人数
	r <- n%%p
 
	#空の行列を作成
	if(1 <= r){
		tb <- matrix(, nrow = trunc(n/p), ncol = (p+1)) #余りが1以上であれば、余分に1列を追加
	}else{
		tb <- matrix(, nrow = trunc(n/p), ncol = p)
	}
 
	#余った学生がいなくなるまで1人多くサンプリング
	for(i in 1:trunc(n/p)){
		if(i <= r){
			for(j in 1:(p+1)){
				tb[i,j] <- sample(d, 1)
				d <- d[-which(d %in% tb[i,j])]
			}
		}else{
			for(j in 1:p){
				tb[i,j] <- sample(d, 1)
				d <- d[-which(d %in% tb[i,j])]
			}
		}
	}
	result <- as.data.frame(tb) 
 
	#空行の削除(参考:http://id.fnshr.info/2017/08/14/r-blank-row-col/)
	#	is_blank の定義
	is_blank <- function(x) {is.na(x) | x == ""}
 
	# すべてが空欄である行を探す
	unnecessary_row <- apply(result, 1,
													 function(x){
														 all(is_blank(x))
													 })
 
	# 「すべてが空欄である行」以外を残す(=空行の除去)
	result <- result[!unnecessary_row,]
 
	#見出し行に名前を付与
	namae <- "member.1"
	for(k in 2:ncol(result)){
		namae <- append(namae, paste("member.", k))
	}
	colnames(result) <- namae
	result
}

( )の中の引数でグループ毎の人数を指定する。2人グループ(要するにペア)なら2を、3人グループなら3を入れる、といった感じで。

空行の削除は、以下の記事を参考とさせていただきました。

Rで空行・空列を除去する方法

人数がグループ数で割り切れない場合、余った人を各グループに1人ずつ割り当てるような仕様となっている。例えば30人で4人グループを作る場合、4人グループが5組と、5人グループが2組できる。これは自分が授業内で即興でグループを作るときのアルゴリズムに則っている。「いや自分なら4人グループ7組と2人ペア1組にする」という先生がいましたら、この関数はそういうのには対応していませんごめんなさい。

この仕様のせいで、思ったようなグループの人数にならないときがある。例えば40人で7人グループを作るとき、余った5人をできたグループに割り当てていくと、すべてのグループが8人になってしまう。これは余りの人数などで例外処理をしていけばいいのだろうけど、しんどいので今回は割愛。そもそも7人グループとか作ることなんて滅多にないと思う。

これをShinyアプリにするのが本当のねらいなのだけど、それはまた時間のあるときに。

ThinkPad X1 Carbon(第3世代)のゴム足交換

先日、ThinkPad X1 Carbon(3rd Gen.)のゴム足が取れた(参考: ThinkPad X1 Carbon(第5世代)の感想)。そこでレノボのカスタマーサービスに連絡して、ゴム足を送ってほしいとお願いしたところ、保証内の範囲で対応してくれることになった。ただし、ゴム足だけ送るということはできず、ベースカバー(裏蓋)ごと交換になるという。PC本体を送りつけて先方で交換してもらうか、ベースカバーだけ送ってもらってこちらで交換するか、という選択肢を提示され、自分で交換を選んだというのが今週頭の話。

その後、いろいろと確認事項が書かれたメールが届いた。内容は、交換済みの部品を返送すること、その際梱包資材は送られてきたものをそのまま使うことなど、手続き上の注意点に加えて、シリアルナンバーの書かれたラベルを新しいベースカバーに貼り替えてください、とあった。

一昨日(連絡してから2日後)、ベースカバーが届いた。当たり前だが2年弱使ったものよりきれいである。早速取替作業を行う。ネジ穴が持っているドライバーと微妙にマッチしなかったが、なんとか締め上げ作業終了。あとはラベルを貼り替えるだけ…となったとき、ベースカバーと一緒にラベルがたくさん入った袋が同封されていることに気がついた。よくよく見てみると、製造地や基準適合マークが書いてあるラベルがいっぱい詰められていた。元々のラベルを移植すればいいやと思っていたので、横に放っておいて作業開始。

自分のものは日本の米沢工場で製造された、所謂米沢生産モデルというやつで、ラベルにもAssembled in Japanの表記とともに、Factory IDがYZ(米沢)と記されている。米沢モデルにこだわって購入した自分としてはこのラベルに思い入れがあるのだ。

そう思いながら作業を開始したのだが、なんとラベルを剥がすのに失敗してしまった。こだわりのラベルが見るも無残な姿に。つらい。こんなことなら剥がす前に写真をとっておくのだった。

それではせっかくなので新品ラベルを使わせてもらおうか・・・と思ったら、なんと自分のPCの製造地が表記されたラベルが入っていないではないか。添付されていたラベルは、Made in China表記の、Factory IDがKSのものばかりで、米沢ラベルは1枚も入っていなかった。

(ちなみに「KSってどこやねんks」と思いながら調べてみたが、この工場についての情報は見つからなかった。一体どこなんだろうか)

ということで、しかたなく応急処置として、日本語が書かれたKSラベルを貼っておいた。けどやっぱり悔しいので、レノボに米沢ラベルを送ってもらえないか交渉してみる予定。うーん。

そうそう肝心のゴム足は、今のところしっかりとくっついている模様。もう少し活躍してもらおう。


【追記】

サポセンに問い合わせてみたところ、米沢生産ラベルは保守部品として用意がなく、手配できないそう。とっても残念。米沢ラベルを貼り替えされる方は、破損しないようにご注意ください。

てかこんなガチガチにひっついたラベルを貼り替えるってのがそもそも無理ゲーだったよな…。

 

ThinkPad X1 Carbon(第5世代)の感想

そこかしこにいっぱいレビューが出ているので今更感はあるが、先日届いた第5世代のThinkPad X1 Carbonの感想を、感動が薄れないうちにまとめておきたい。

まず何よりサイズが小さくなったのが素晴らしい。今まで使っていた第3世代と比べて、14インチという画面サイズそのままで、額縁が狭くなったことで、ひと回り小さい13インチPCレベルの大きさになった。この微妙なダウンサイジングが意外と馬鹿にできなくて、膝上や、喫茶店のテーブル上で画面を開いたときの圧迫感がかなり軽減された。

そして軽くなった。第3世代は1.3kgほどだったのに対し、第5世代は1.1kgほど。たった0.2kgの違いだが、量りにかけるまでもなく、手に持って比べてみると軽くなったことがよく分かる。

個人的に一番楽しみにしていたのがWWANで、本体が届く前からSIMカードを入手して待っていたほど。使ってみると、やはり便利だった。出先でいちいち携帯のテザリングやらモバイルルーターやらをオンにする手間が省けただけで、すごく得した気分になる。スリープから復帰して再度電波を拾う際にもたつくのが気になるが、これからドライバがアップデートされればなんとかなると思っている。

割と重要視しているキータッチも、第3世代と比較して改善されたように思う。フニャフニャせず、しっかりしているし、かといって硬すぎるわけでもない。程よい感じ。

見た目の話をすると、天板が金属っぽい加工だった第3世代に対して、第5世代では伝統のピーチスキン加工が復活していた。これもThinkPadらしくて非常に良い。

あと、第5世代のトラックパッドは非常に良くなっていた。第3世代では、2本指で画面スクロールをしてもなんとなくカクついた動きだったのに対して、第5世代ではMacと遜色ない操作感。ポインタ操作は基本的にトラックポイント(所謂赤ポチ)派で、トラックパッドはそれほど使わないのだけど、これなら使ってもいいと思える出来だった。一方トラックポイントは、もう少しポインタ速度を上げられるとよいのだけど、これもドライバが更新されればなんとかなると思っている。

ということで全体的にはかなり満足度高め。Thunderbolt3で接続するドックも注文中なので、それと併せて使うのが楽しみだ。


【追記】

ゴム足の仕様も第3世代から変わっていた。第3世代は、円形のゴム足が強力な両面テープでくっついているだけだった。この第3世代のゴム足が、一旦何かのきっかけで取れてしまい、そこから頻繁に行方不明になって困っていたのだが、今回のモデルは本体と固定されている(らしい)ので、そういうことはなさそうだ。

ちなみに先日、第3世代のゴム足がまた行方不明になって見つからなくなり、レノボのカスタマーサービスに問い合わせたら、保証の範囲内で新しいものを送ってくれることになった。といっても、ゴム足だけの送付はできないらしく、ゴム足のついた新品のベースカバー(裏蓋)が送られてくることに相成った。本体預かりで交換か、自分で交換して古いパーツを送り返すか、どっちがいいかと聞かれたので、裏蓋くらいなら自分で交換しますと返事した。今は裏蓋を待っているところである。

スマホ(Arrows M03)の内部ストレージにしたSDカードが死んだ話

スマホ(という呼び方が実は好きではなくて普段は携帯と呼んでいるのだけど、伝わりにくいのでここではこう呼ぶ)で使っていたSDカードが死ぬという嫌な出来事が起きたので、久しぶりにブログに書く。

まず、自分が使っているスマホは富士通のArrows M03という、一般的にミドルスペックとされている機種(もちろんOSはAndroid)。OSがAndroidで、SIMフリー対応で、かつおサイフケータイ対応の、数少ない機種の一つである。ちなみに防水・防塵・耐衝撃という、自分好みの特徴も持っている(同じ理由で、時計はG-SHOCKが好きだし、PCもタフなThinkPadやLet’s noteが好き)。

ただ残念なのはマシンスペックで、CPUは前世代の感があるSnapdragon 410で、RAM容量は控えめな2GB。購入時にもいささか心もとないと思ってはいたものの、目をつぶって購入したら、やはり普段使いですらもたつくことが多く、使っていてストレスを感じる機会が多かった。
http://www.fmworld.net/product/phone/m03/spec.html

そして内蔵ストレージは16GBなのだが、これが思っていた以上に問題で、普段使いのアプリをインストールしただけですぐに容量がいっぱいになり、新しいアプリをインストールすることができなくなってしまった。またストレージ容量がギリギリいっぱいだと動作が不安定になり、これが前述のスペックの問題と相まって非常にストレスフルで、一時は、買って半年も経たないのに買い替えを検討するレベルだった。

そんな中で、M03にmicro SDカード(SD)を入れて、それを内部ストレージとして使う、という記事をいくつか見つけた。

  • http://qiita.com/komi5320/items/94ec16f1c1748698a7d4
  • http://zmzlz.blogspot.jp/2016/10/android-60-arrows-m03-microsd.html
  • https://ameblo.jp/suxen/entry-12231230442.html
  • http://myset.hatenablog.com/entry/2016/12/12/000000

これらの情報は、買い替えたくても先立つものがなくて我慢するしかなかった自分にとってはまさに渡りに船だった。そこで早速、AmazonでこのMicro SDカードを注文したのだった。当時は☆4つほどの評価だったと思う。高評価なのに安価だったことが決め手だった。

ただ、全体的な高評価の反面、☆1評価が割合多かったのが気になった。一応確認すると、買って数日~数ヶ月で、壊れるというレビューが目立った。しかし、それまで自分がSDカードやUSBメモリを購入した際にハズレを引いたことがなかった当時の自分は、「どんなSDでも、ある程度初期不良があるだろうから」と、深くは考えていなかった。

届いたSDを早速内部ストレージ化し、可能な限りのアプリを(表示の上では内部ストレージになっている)SDに移動させると、保存容量に余裕ができた。そのおかげで、しばしの間自分は快適なスマホ生活を送ることができていた。とはいえ、全てのアプリがSDに移動できるわけではないため、多少容量が空くといったくらいのことだったのだが、それでも容量不足で新たなアプリがインストールできないといった事態は解消され、それだけでも満足していた。

少し雲行きが怪しくなってきたのは、新年度に入ってすぐのこと。挙動がすごく不安定になったり、動作のもたつきがひどくなった時期があったのだが、その際にキャッシュを削除すると、その状態が解消されることに気がついた。それでいい気になった自分は、自動でキャッシュをクリアするアプリを入れて、1日1回自動でキャッシュクリアするようスケジュールしたのだった。

それが良くなかったのか、その少し後から、SDに移動していたFacebookアプリなど一部のアプリが起動できない(のみならず、他のアプリを使用している際に、「動作を停止しました」というダイアログが何度も表示される)という事態が頻発した。結局この状態の原因は今でもよくわからないのだが、アプリを本来の内蔵ストレージに戻してあげるだけで解決したので、そのときはさして気にしていなかった(ちなみにTwitter アプリも、アイコンや画像が表示されないという事態が起こったのだが、これは気づかないうちに解消されていた。これもよくわからない)。

その後しばらく経った今月8月、なんとなくストレージ容量を確認していて、また内蔵ストレージに余裕がなくなってきたことに気づいた自分は、Facebookなどのいくつかのアプリを再びSDに移動させた。今思えばこれがトドメになったような気もする。

そして今日、学会を終えた自分は観光を楽しんでいた。その最中、いつの間にかスマホの電源が落ちていることに気がついた。「バッテリーには余裕があるはずなのに…」と思いつつ、再度電源を入れてみると、普段以上に起動に時間がかかる。嫌な予感は的中し、SDが正しく認識できないという通知が出た。単なる接触不良では、と疑って数度にわたって挿し直しや再起動を試してみたが、やはり改善しない。スマホの方も、本来あるはずのSDが検出されないからか挙動がおかしくなってしまい、せっかくの観光なのにカメラが使えないという事態に陥った。カメラを起動すると「ストレージ不足で使えない」旨のダイアログが出る。SDを抜いても直らない。

おそらくSDに入っていたであろうFacebookをはじめとしたアプリも起動できなくなった。それどころか、もともとの内蔵ストレージに入っているそれ以外のアプリも、なぜか挙動が不安定になった。

スマホのストレージ設定を開くと、やはりSD自体は認識されているものの、異常があるのでフォーマットの必要があるというような表示が出た。それじゃあとりあえずフォーマットしてみましょうかと試みると、エラーでフォーマットが完了できないと出てくる始末。内部ストレージとして認識されていたSDを削除し、その後再度フォーマットを試してみたものの、やはりうまくいかない。

そこでホテルに到着してすぐ、Windows機にSDを挿して、diskpartを起動し、cleanでパーティションごと削除しようとした。が、ただそれだけの処理にしては、えらく時間がかかる。「買ってすぐに/しばらくして壊れた」というAmazonでの低評価レビューを思い出し、一抹の不安がよぎった次の瞬間、

キャプチャ

で、でたーI/O デバイスエラー。万事休す。おそらくSDは死んだのであろう。

まさか自分にこんなことが起こるとは思ってもみなかったので、この事態に対しては完全に為す術がなかった。SDに移動させていたアプリやデータは根こそぎ消え、今となってはどのようなアプリがSDに入っていたのかすらわからない。これから、「さあこのアプリを使おう」と思ったタイミングで、そのアプリが消えていたことに気づき、そして再度インストールする、という営みを、消えたアプリの数だけ繰り返すという日々が待っているのだろう。

唯一の救いは、カメラで撮った写真が即時的にGoogleフォトにアップロードされる設定にしていたおかげで、写真はすべて残っていたということだ。通信量節約のためにモバイルデータ通信でのバックアップをオフにしていたら、今回の学会期間中に撮った写真は根こそぎ消えていたはずだ。

SDを抜いたら、スマホの挙動は安定し、カメラも起動するようになり、とりあえず一件落着なのだけど、また容量不足で悩まなければならないのかと思うと、ちょっと気が重くなる。とはいえSDを内部ストレージ化してトラブったときのややこしさ・面倒臭さも今回学習したので、しばらくはSDなしでやってみようと思う。

てかSIMフリー・Android・防水・防塵・耐衝撃・おサイフケータイ対応のハイスペック機種はよ。