AndroidアプリでLineのトーク履歴バックアップのインテントを受け取る
概要
ラインのトーク履歴をテキストファイル(.txt)として別のアプリで受け取る方法
目的
- 容量少なく履歴を保存する
- バックアップとして保存しておく
- ラインのバックアップでバックアップできない状況に保存する(osの変更、複数人のチャットの保存)
ラインでのバックアップの仕方(Android)
トークリスト -> 設定表示 -> トーク設定 -> トーク履歴をバックアップ -> テキストでバックアップ -> 目的のアプリを選ぶ
方法
・Manifest
intent-fileterをインテントを受けるアクティビティ内に入れる。ラインがアクションを"android.intent.action.SEND_MULTIPLE"、mimeTypeを"text/*"で送ってくるので対応する。
<intent-filter>
<action android:name="android.intent.action.SEND_MULTIPLE" />
<data android:mimeType="text/*" />
</intent-filter>
permissionの設定をする(バージョンがJELLY_BEAN(16)より上の場合の設定もアクティビティで行う)。
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
・activity
マイムタイプとアクションが正しいのを確認してuriリストを入手する。リストの最初のアイテムがテキストファイル。Unchecked castの警告が出るので@SuppressWarnings("unchecked")で対応する。
if (mimeType.equals("text/plain")){
if (Intent.ACTION_SEND_MULTIPLE.equals(i.getAction())){
@SuppressWarnings("unchecked")
ArrayList<Uri> uriList = (ArrayList<Uri>) i.getSerializableExtra(Intent.EXTRA_STREAM);
Uri uri = uriList.get(0);
}
}
・その他
getPathでパスを得て、FileInputStreamなどを使ってトークヒストリーを使いたいように使う。
Author And Source
この問題について(AndroidアプリでLineのトーク履歴バックアップのインテントを受け取る), 我々は、より多くの情報をここで見つけました https://qiita.com/marketSquid/items/23bff69c546984bb7beb著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .