私はアンドロイドのappandを持っています。アンドロイドのIntentをブロブのフィールドとしてデータベースに保存したいと思います。私は、私のアプリがすでにすべてを行っているので、TEXT、INTEGERなどの標準データ型をSQLiteに格納して取り出す基本を知っています。私はブロブの格納と取り出しに慣れていません。私は、BLOBが文字列として格納し、そしてIntentに戻って構文解析するよりも、最良の方法であると仮定しています。しかし、それは正しい仮定ではないかもしれません。インテントはパッケージ名、URI、エキストラなどがあります。そのため、パーツを格納するのではなく、全体の意図を格納/取得したいのです。androidでSQLiteデータベースにIntentに格納
答えて
は意図してParcelableインタフェースを使用します。
Parcel parcel;
myIntent.writeToParcel(parcel);
ContentValues values = new ContentValues();
values.put(MyField, parcel.createByteArray());
getContentResolver().insert(MyBaseColumn.MyTable.CONTENT_URI, values);
はそれを得るためのプロセスを逆にします。
テキストが好きな人は、jsonの使用を検討できます。
あなたは、単に文字列の方法で意図を保存することができます:これは非常に悪い考えです
String intentDescription = cursor.getString(intentIndex);
Intent intent = Intent.parseUri(intentDescription, 0);
残念ながら、これはフラグとすべての追加情報を保存しません。 – JacksOnF1re
@ JacksOnF1reはそうではありません。 [the docs](http://developer.android.com/reference/android/content/Intent.html#toUri(int))をお読みください。 "URIは、アクション、カテゴリ、タイプ、フラグ、パッケージ、コンポーネント、および追加物を記述する追加のフラグメントとともに、基本URIとしてインテントのデータを含んでいます。 – mattgmg1990
Intent.parseUri()のパフォーマンスはあまり良くありません(String.startsWithを何度も呼び出します)。 – sandrstar
- 1. MySQLデータをSQLiteデータベース形式にエクスポートしてSQLiteデータベースに格納
- 2. AndroidとPhonegapを使用したSQLiteデータベースの格納
- 3. AndroidエミュレータはどこにSQLiteデータベースを格納しますか - Eclipseですか?
- 4. SQLiteに日付を格納
- 5. xmlデータをsqliteデータベースに格納する方法
- 6. Sqliteデータベースにデータを格納する問題
- 7. sqliteデータベースにオブジェクトを格納する方法は?
- 8. アンドロイドスタジオのSQLiteデータベースにビューオブジェクトを格納する方法
- 9. sqliteデータベースに統一地形データを格納する方法は?
- 10. SQLiteデータベースに格納されたデータ言語を翻訳する
- 11. SQLiteデータベースを取得し、オブジェクトの配列に格納する
- 12. AndroidがSQLite DBにイメージパスを格納しています
- 13. AndroidはSQLiteにParcelableオブジェクトを格納します
- 14. データベースにオブジェクトを格納
- 15. は、データベースに格納する
- 16. SQLiteデータベースに格納されているデータでAlarmManagerを使用するには?
- 17. 画像をSQLiteに格納する
- 18. plistまたはSqliteデータベースにデータを格納する方が良いですか?
- 19. ラジオボタンの値に基づいてsqliteデータベースの複数のテーブルに値を格納
- 20. SQLiteデータベースに格納された緯度と経度にオーバーレイを追加する
- 21. webOS 3.0 enyo sqliteデータベースの格納と取得
- 22. Android SQLiteデータベースに格納されたJSONデータを照会することは可能ですか
- 23. AndroidにSQLite Cursorを格納するのは悪い考えですか?
- 24. Android-データベースに文字列が格納されていない
- 25. firebaseデータベースにユーザープロファイル情報を格納する方法android
- 26. ボタンをクリックしたユーザーをデータベースに格納するAndroid Firebase
- 27. SQLiteデータベースにApplicationInfoオブジェクトを格納して取得する方法は?
- 28. NSArrayオブジェクトを目的のc言語のsqliteデータベースに格納する方法
- 29. バージョンコントロールにSQLiteデータベースを格納するのは意味がありますか?
- 30. iPhone用のsqliteデータベースはどこにアプリケーションが格納されていますか
:
後で、テントを復元することができます。 Androidのdocs [link](http://developer.android.com/reference/android/os/Parcel.html)から: "Parcelは汎用のシリアル化メカニズムではありません。このクラス(および対応するParcelable API任意のオブジェクトをParcelに変換する)は、高性能なIPCトランスポートとして設計されているため、Parcelデータを永続ストレージに格納することは適切ではありません。Parcel内のデータの基礎となる実装の変更は、古いデータは読めません。 – Anthony