2012年7月16日月曜日

Galaxy S3のデータを移行する方法!

涼しいうちに記事書いちゃおう!

ぱすわ〜ど帳のGalaxy S3のデータ移行方法について、画像付きで詳しく説明します。
もう、SDカードの位置が機種によりまちまちで。。。
いったいどうなるんだか。。。


まず前提条件です。

1.SDカードにexport.csvが入っている事
2.アストロにてスクリーンショットを撮っているので、他のアプリを使用の方は
 適宜読み替える事


そんなところでしょうか。
SDカードへのデータコピー方法は過去の記事をご覧ください!

http://developerwaiwai.blogspot.jp/2012/06/sa_06.html
http://developerwaiwai.blogspot.jp/2012/06/sa_05.html
http://developerwaiwai.blogspot.jp/2012/05/sa_27.html

こちらの記事が参考になると思います。


ここからが本番^^;;;

情報としては、Galaxy S3の外部SDカード(端末に実際にさすSDカード)の
位置は、
/mnt/extSdCard
となります。

まずアストロを起動すると以下のような画面になります。
画像1

ここが、ぱすわ〜ど帳がファイルを読み込んだり書き込んだりする位置になります。


一方、SDカードは別の位置なので、画像1の赤枠「上へ」ボタンをタップします。













そうすると、以下のような画面になります。
画像2

ここで、左の赤枠がSDカードの位置になります。
ちなみに右赤枠は、画像1の位置と同じ、内部SDカードの位置で、ぱすわ〜ど帳がファイルを読み書きする所になります。

という事で、左の赤枠のextSdCardをタップします。












そうすると以下のような画面(ちょっと違うけど)になります。
画像3

ここでようやくSDカードの中身にたどりつきます!

ここに、「export」というファイルがありますので、
それをロングタップすると、画像3のようなメニュー
が現れます。

ここで、赤枠の様に、コピーをタップしてください。
そして、その後、ホームボタンをタップします。










そうすると以下のような画面になります。
画像4


ぱすわ〜ど帳がファイルを読み書きできる、内部SDカードの位置に戻りますので、ここで、画像4の様に、貼り付けボタンをタップします。

そうすると、この位置にSDカードに入っていた「export」というファイルを、コピーする事が出来ます。

ここまでくれば、もう終わりも同然!!!









後は、ぱすわ〜ど帳を起動して、端末メニュー>SDからデータ復元
を実行してください。
これで、データ移行できます!!!


いかがでしたでしょうか?


この一連の動作は、音楽や写真などSDに入っている様々なデータをコピーする
場合にも応用できますので、Galaxy S3の方は是非とも覚えておいて頂きたい
操作です。


これでデータ移行できない!!!
なんて事はないですね^^


8 件のコメント:

  1. 質問してもよろしいでしょうか?
    Galaxy S3にて、Androidのadb shellを使用して、printenvコマンドにて表示される環境変数の一覧で、/mnt/extSdCardのパスはなんという名称の環境変数に指定されていますでしょうか?
    私もAndroidアプリを制作しているのですが、ユーザーの方からS3でSDカードへデータ保存が出来ない、と指摘を受けたのですが、実機を持っていないので確認できず困っています。

    返信削除
    返信
    1. コメントありがとうございます。

      最近の機種は2ストレージ持つのが多くなってきましたね><

      私は機種依存しないように作っているので、
      Environment.getExternalStorageDirectory().getPath()
      でパスを取得しています。

      そのため、2ストレージの機種は内部SDに保存されますって公言しています。
      なので、上のような記事を書いてます。

      さて、お問い合わせの件ですが、S3でprintenvしました
      結果としては

      SECONDARY_STORAGE=/mnt/extSdCard:/mnt/UsbDriveA:/mnt/UsbDriveB:/mnt/UsbDriveC:/mnt/UsbDriveD:/mnt/UsbDriveE:/mnt/UsbDriveF

      と入っています!
      :(コロン)で切り出さないといけないですね。。。

      ただ、この変数も当てにならないようで、以前どの機種だったかは忘れましたが
      内部SDと同じパスが入っている機種もあるようです。。。

      ほんとSD周りはこまりますよね。。。

      あまりお役にたてられなかったのではと危惧しています><


      もしなにか他にもありましたら、おっしゃって頂ければ
      開発者同士協力していきたいと思いますので、
      気軽にお問い合わせください!

      削除
  2. 早速ご回答いただきましてどうもありがとうございます!
    とても助かります!

    SECONDARY_STORAGE…
    切り出しか~、自信ないな。。。

    実は私も当初、
    Environment.getExternalStorageDirectory().getPath()
    を使用してパスを取得していたのですが、
    Galaxy Sを使用しているユーザーの方から、
    SDへのデータ保存が失敗する、という指摘を受けまして、
    実機を持っていなく、よくわからないままにいろいろ情報を漁り、
    以下の記事等を元に、外部SDカードのパスを環境変数を使用して取得する方法へ切り換えたのです。
    http://inujirushi123.blog.fc2.com/blog-entry-30.html

    上記の方法では、/mnt/sdcard/external_sdと/mnt/sdcard-extを判別することが出来て、そうじゃない場合には最終的にmnt/sdcardを返してくれます。

    …あれ?
    書いていて気付いたのですが、最終的にmnt/sdcardを返すなら、内部SDカードに保存されるはずですね。。。

    しかも、環境変数使うように変更しても、結局Galaxy Sを使っている方は保存が出来なかったらしく、その方Galaxy S3も持っているみたいで、そっちでは/mnt/sdcard/に保存された、って仰っていたんですよね。

    そもそも、Environmentを使う方法にしても、内部SDカードに保存されていいはずなんですよね。

    私のコード自体に何か問題があるのか、環境が関係あるのか…

    実機確認をしないで、情報だけで対応しようとしても限界があるかもですね。
    Galaxy買うかな~
    Xperia GX買いたかったんだけどなー


    あ、すみません。
    貴重な情報いただきましてどうもありがとうございましたm(__)m
    一晩寝て、明日また考えます。

    返信削除
    返信
    1. 今までの私の経験上では、おそらく内部SDの仕様を知らなくて、保存出来ないって言ってきているように思えます。
      事実、私のアプリでも、内部SDと外部SD関連での問い合わせなどは相当数いました!

      おそらく内部SDには保存されてるんじゃない かなぁ? 

      情報URLありがとうございます!

      Xperia系のSD関連も特殊っすよ~(^-^;
      機種により全然違いますから(^-^;

      キャリアやメーカーはこういった開発者が困っている状況に端末貸し出しなどで対応してほしいですよね>_<

      個人や規模が小さな会社だと限界がありますから>_<

      削除
    2. ご返答ありがとうございます

      実は私のアプリでは、SD保存の際にSDカードがマウントされているかを確認するコードを挟んでいるのですが、今回保存が出来ないと言ってきた方は 「SDカードが挿入されていないとメッセージが出る」と言っているので、どうもそこのところで引っかかっているらしいいんですよね

      私のアプリでは当初、Environment.MEDIA_MOUNTEDを使用してSDがマウントされているかを確認していたのですが、環境変数使用するように変更する際、それじゃ上手く行かなくなるようなので、いろいろ探して下の記事を見つけて、そこに書かれていたLinuxのmountコマンドを使用するように変更したんですよ
      http://d.hatena.ne.jp/yohpapa/20111229/1325147606
      ここの下の方に書かれているコードを、そのまま引用したんですが(^_^;)

      でも、Galaxy SとS3持っている方は、S3ではこれで/mnt/sdcard/に保存が出来たって言っているのに、今回の方は出来ないって言ってるんですよね。。。
      もう、よく分からんです(T_T)

      しかも今回の方はレビュー覧に「保存できない、対応お願いします。」って書いてきただけなので、こちらから連絡することも出来ない状況で。
      でも、有料版買って頂いた方だから出来るだけ対応してあげたいし。。。

      実はわたしこれまでXperia acro一つのみで開発・対応を行ってきたんですが、このSD関連の問題はちょっと限界があるかもですね…
      好みの問題だけで、次はXperia GX買おうと思ってるのは甘い考えかも(^_^;)

      あ、わいわいさんがKDDIとかに端末貸し出してくれるようにお願いしたっていう記事読みましたよ
      すごいアクティブですね~
      でも、ホントそれやって欲しいものですよね

      わいわいさんのぱすわ〜ど帳のアプリだと、SDへの保存も主要な機能の一つだから、それ関連の問い合わせも結構たくさんあるんでしょうね
      ご心中お察し致します

      削除
    3. ご回答ありがとうございます。

      なるほどねぇ(^-^;
      私もマウントしてるかどうかは確認していますが、そもそもSDがマウントしていないって状況は起こり得るのでしょうか?

      というのは、galaxyなどは内部SDを常にマウントしている状態なので、その状況が起きるのかがちょっと疑問です。

      レビュー。。。わかります。
      ~出来ない。対応お願いします。
      と書かれても、具体的にどういった内容でそう判断したか、あるいはどういった操作をしたのかがわからないし、レビューなので、返信して聞くことも出来ないもどかしさがありますよね。。。

      Googleは返信機能をつけると言ってますがサッパリつきませんし。。。

      お察しします。

      KDDIに聞いたのは、なんていうかな。
      そのユーザーさんの困っていることを
      助けたい!
      そんな気持ちで連絡してみました!
      結果は玉砕ですが(^-^;
      キャリアさんにはほんとそういうサポートをしてもらいたいものです!

      結果的に売上増につながるんだけどなぁ。。。
      最近の傾向ではそういった長期的なもののみかたをするって事が難しくなってるのかもしれないですね。。。


      参考にどのようなアプリを作られているのでしょうか?

      私の未熟ですが経験してきたことで
      何かお手伝いや手助けできたらいいなという気持ちでお聞きしています。

      削除
  3. 旧機種:Android4.2
    新機種:Android6.0

    でデータ移行を行いましたが、移行出来たデータは項目やカテゴリのみで、中の名称、ユーザID、パスワードは空欄のままでした。

    エクスポート出来たデータを直接閲覧すると、ユーザデータは書かれているようでした(CSVファイルをエディタで表示)

    データ移行を完了させる方法を教えて頂けないでしょうか?

    返信削除
    返信
    1. 私もデータ移行(SDカードから復元)ができず、いろいろトライしてみた結果わかったこと
      ・『export.csv』のファイル名しか読み込まない
      ・そのため、データをSDカードへ保存前に
        設定⇒ファイル名に日付を付加 のチェックを外す
      ・またはexport@@@@.csvの@@@@(日付)部分を名前を変更により削除する
      ・csvファイルをsdcard > Passwoder に置く

      これでファイルの読み込み(SDカードから復元)ができました。
      ご参考になれば幸いです

      削除