https://naba-san.hatenablog.com/


Xperia 2011 が PC から認識されない問題

※ 先日、本機の ICS 非対応が発表されました。今後この日記の更新予定はありません。

※ 下記の対処法で解消しない場合、この辺を参考にすると幸せになれるかもしれません。

概要 - PC上からXperia端末が認識されない問題について

Xperia arc/acro/rayとPCをUSB接続した場合,PC上からXperia端末が認識できない事があります。これにより,PC Companion,Media GoなどからXperia arc/acro/ray端末が操作できない,ファイルが参照できない等のトラブルが生じる事があります。

【トラブルの例】 ※「SO-02C」はお手持ちの機種と読み替えて下さい
・デバイスマネージャ上でSO-02Cを認識しない
・デバイスマネージャはSO-02Cを認識しているのに,マイコンピュータ上にアイコンが表示されない
マイコンピュータ上にSO-02Cが表示されるのに,その中身が空っぽ
・MTP接続時に限って,ディレクトリの一部が表示されない

【関連するトラブルの例】
・PCC(PC Companion)がSO-02Cを認識しない
・SEUS(Sony Ericsson Software Update Service)がSO-02Cを認識しない
Media Go又は他の音楽管理ソフトウェアからSO-02Cを認識しない、同期できない
・パソコンがつながらない,デバッグできねー,Android SDKが認識しねー
・2.3.3から2.3.4にアップデートできねーetc
※(本件とは関係ありませんが)アップデート等でPC Companionが正常に動作しない場合、SEUSを試されると良いかと思います。

本記事では,XperiaにおいてPC接続を行う場合の簡単な概要と,トラブルの原因,対処法を取り扱います。尚,私はXperia acro SO-02Cのユーザとしてこの問題に遭遇しました。本記事は,原因調査時の備忘録として他のユーザ向けに公開しています。

長々とした説明が面倒な方は、対処法の部分だけをお読み頂いても良いかと思います。



前提知識とトラブルの原因について

Xperia arc/acroとPCの接続

Xperia arc/acroは,本体にmicroUSB端子を有しています。このmicroUSBに対応するケーブル(以下「microUSBケーブル」と表記します)は,Xperia arc/acro製品に対して標準で1本付属しており,また他社からも製造・販売されています。大前提として,このmicroUSBケーブルには「データ転送用」と「充電専用」の2種類が存在します。当然ですが,「充電専用」のケーブルを用いた場合,PCからXperia arc/acroを認識する事ができませんので,まずはケーブルの種類が適切なものである事を確認してください。標準付属のものは「データ転送用」です。

PCとXperia arc/acroをデータ転送ケーブルで接続した場合,Xperia arc/acroの接続方法に関する設定で,次の2種類の接続方法を選択することができます。

MSC(Mass Storage Class): ファイル転送モード
MTP(Media Transfer Protocol): メディア転送モード

このとき,MSCを選んでもMTPを選んでも,うまく接続できないトラブルが生じる事があります。

MSCとMTPについて

MSCとは,いわゆるUSBフラッシュメモリに代表される,Mass Storage Classによる直接操作を用いる接続方法です。

MSCでは,ストレージへのアクセスが低いレベル(ブロック単位)で行われる為,AndroidとPCからSDカードへ同時にアクセスする場合に不都合が生じます。要約すると,PCからAndroidに内蔵されるSDカード等へアクセスしようとすると,Android上で事前にSDカード等のアンマウント操作を行う必要があります。そこで登場するのが「MTP」です。

MTPは,MicrosoftによるPTPの拡張技術で*1,メディアデバイス側がストレージ上のファイルシステムを管理する形でメディアの転送をサポートする,メディア転送プロトコルです。

MTPは,ファイルシステムの直接操作がメディアデバイスのみによって行われます。USBホスト(PC)は,転送対象とするファイル等をMTPデバイスに(ファイルシステム等を介さず)そのまま転送する為,ストレージへのアクセスには直接的に係わりません。要約すると,MTP接続を利用してPCからAndroid上のSDカード等へアクセスする場合,MSCのようなAndroid上からのSDカード等のアンマウント操作が必要ありません。

Xperia arc/acroおけるMTPの実装と問題点

本来,Androidにおいて標準ではMTPはサポートされませんが*2Xperia arc/acroにおけるMTPのサポートは,プリインストールアプリケーションである「MtpApp」によって実装されるようです*3。この「MtpApp」の挙動が非常に怪しく,Windows PCとXperia acroを接続したとき,本記事冒頭のようなトラブルが生じることがあります。

検証環境では,microSDHCカードの交換も試みていますが(SanDisk microSDHC class4 / 32GB‥詳しくは後述の【蛇足】を参照),SDフォーマットした直後の状態では何の問題もないにも関わらず,データを徐々に追加するとMTP接続に問題が生じました。

また,「MtpApp」はAndroidパッケージとして実装されている為,MTPを利用するごとに徐々に本体記憶域の記憶領域を消費してきます。この挙動を考える限り,microSD/HCカード内部のインデックス又はキャッシュを保持しているように見えます。

(脱線)acroにおけるMSC接続のトラブル

USBでMSC接続した際,マイコンピュータ上にドライブレター付きでマスストレージが表示されるのに,開こうとした時にデバイスが準備できていない等のエラーが表示されることがあります。このエラーが出た時は,Android側でのアンマウント操作が完了していない可能性が高いです。これは,Androidバイスがいわゆるカードリーダーとして認識されているにも関わらず,AndroidからmicroSDHCがアンマウントされていない≒microSDHCカードが未挿入の状態として認識されているものと考えられます。

但し,希にアンマウント後もPCから認識されないトラブルがあるようで,これは原因が全く分かりません*4



対処法

ファイル転送モード(MSC)でトラブルが発生した場合

まずは本体メモリカードのアンマウント操作を実行して下さい。また,使用しているケーブルの種類が適切であることを確認して下さい。これで改善しない場合は,次の対処法へ。

メディア転送モード(MTP)などでトラブルが発生した場合

MTPによってUSBからアクセスできないトラブルに見舞われた場合,アプリケーションの管理画面から,MtpAppのデータを消去して下さい*5。データを消去したら,USB接続を再接続し,転送モードを一度MSCへ,その後に再度MTPへ切り替えて下さい。

MtpAppはmicroSDHCの内容をキャッシュしていますので,再接続直後はMTP接続がうまくいきません。徐々にインデックスを再構築するかと思いますので,再接続後は接続したまま暫く放置して,それでもうまくいかない場合は一度端末を再起動してみて下さい。

愚痴

ソニエリさん,独自実装するのは結構ですが,こんな中途半端な事せずにもう少しがんばって欲しいです。あとSPモードメール爆発しろ!



トラブル改善に向けてのお願いについて

先日のアップデート配信前後までに、下記アンケートのお願いをしておりました。

この日記の公開後、blogへのアクセス数が急激に増えています。

同じ問題で悩まれている方が多いのか、単にMtpAppが占有しているデータが何なのかを知りたいのか判りませんが、確かなのは平常時の3倍くらいにアクセス数が増えているという事です。

しかしながら、docomoなどからアップデートが配信されるような気配が全くなく、そもそもarcの報告を鑑みるとdocomoなどがこのトラブルを認識しているかどうかも判らない為、一度SO-02Cユーザとしてdocomoに不具合報告を出したいと考えています。

ついては、皆さんがどのような目的でページを参照されたのかを確認させて頂きたいと考えています。このページを参照された方に対してお願いなのですが、よろしければ下記事項について、コメント欄よりコメントを頂けないでしょうか。

特に、docomoのXperia rayとauのIS11Sもソフトウェア面の仕様は概ね違いが無いと見られ、同様のトラブルが生じる可能性が高いと思うのですが、現状なんら報告がなく、これら環境でのトラブルや改善の報告等がありますと非常に助かります。

1. この日記を参照された目的を教えて下さい。
2. ご使用のキャリア並びに機種名を教えてください。
 ・docomo Xperia arc SO-01C
 ・au(KDDI) Xperia acro IS11S
 ・docomo Xperia acro SO-02C
 ・docomo Xperia ray SO-03C
 ・その他
3. ご使用の機種に関して、キャリアが提供するアップデート等の適用状況等を教えて下さい。
 ・アップデート未適用,最終アップデート適用日など
4. インストール済みアプリケーションのうち、音楽プレーヤやアンチウイルスなど、常駐する形でmicroSD/HCへアクセスするようなアプリケーションをインストールされている場合、それらアプリケーションの名前を教えて下さい。下記は、該当するアプリケーションの例です。
 ・PowerAMP
 ・Dropbox,SugarSync
 ・ドコモ あんしんスキャン,ViRobot Mobile

コメント並びに全項目は任意ですが、判る範囲だけでも構いませんので、お気軽にお答え頂けますと幸いです。

既に当方docomoへの報告を済ませており、ある程度取り纏めた上で本ページのURLを添付し、改善をお願いしました(コメントにも報告させて頂きました)。

しかしながら、実際のトラブルの対応には報告件数がある程度必要かと思いますので、ご協力頂ける方がいらっしゃいましたら、各キャリアさん(docomo, au)などに対して不具合の発生を報告して頂けますと助かります。ご報告頂ける際は、本ページのURLを添付頂いても構いません。

報告が難しい方も、引き続き原因調査の為、アンケートにご協力頂けますと幸いです。ご協力よろしくお願い致します。

*1:http://www.sophia-it.com/content/MTP

*2:Android 3.1/API level 13以降においては,android.mtpとしてサポートされるようです。

*3:某巨大掲示板にて,Xperia arcから「MtpAppを消したらUSB認識しなくなった」的な報告が大量に上がっていますので,そちらも参照のこと。

*4:「MtpApp」が悪さをしているような気がしなくもない‥

*5:トラブルが起きる段階になると,MtpAppのアプリケーションサイズが大きく膨れ上がってると思います