問題タブ [parcel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - プレーンなタイプのバンドルをパーセルすると、RuntimeException が発生します不明なタイプのコードのアンマーシャリング
一時的に保存するために onSaveInstanceState メソッドから Bundle を分割したいと考えています。
putBoolean と putInt のみを使用します。このデータを別の場所に保存します。
後で再利用します。
この例外 @p11.readValue が発生します
わかりません、何が問題なのですか。
android - Parcelable を Parcel の助けを借りてバイト配列にマーシャリングおよびアンマーシャリングする方法は?
Parcelableバイト配列との間で実装するクラスをマーシャリングおよびアンマーシャリングしたいと考えています。私は、Parcelable 表現が安定していないため、インスタンスの長期保存を意図していないという事実を十分に認識しています。しかし、オブジェクトをシリアル化する必要があるユースケースがあり、内部の Android の変更が原因でアンマーシャリングが失敗した場合、それはショーストッパーではありません。また、クラスはすでにParcelableインターフェースを実装しています。
class が与えられた場合、マーシャリング/アンマーシャリングのためにインターフェイスMyClass implements Parcelableを (ab) 使用するにはどうすればよいですか?Parcelable
android - "BadParcelableException: アンマーシャリング時の ClassNotFoundException" ClassLoader を引数とする Parcel.read メソッドの使用中
カスタム クラスを指定して、パーセルに aorg.example.app.MyClass implements Parcelableを書き込みたいと思います。List<MyClass>私はマーシャリングを行いました
クラスを非整列化しようとするたびに
例外があり"BadParcelableException: ClassNotFoundException when unmarshalling org.example.app.MyClass"ます。
ここで何が問題なのですか?クラスが見つからないのはなぜですか?
java - Android でパーセルからオブジェクトを読み取るとき、デフォルトの ClassLoader を使用したくない場合は?
Parcelable インターフェースを実装する場合、CREATOR 実装は通常、Parcel を受け取るコンストラクターを使用します。
この区画には、次のようなコードがあるかもしれません
mMyField = parcel.readParcelable(MyFoo.class.getClassLoader())
私の知る限り、 parcel.writeParcelable(mMyField) は既にパーセルにクラス名を格納しているため、通常はデフォルトのクラス ローダーを使用して代わりに null を渡すだけで問題ありません。
私の質問は、null を渡す代わりに MyFoo.class.getClassLoader() を使用する必要があるのはいつですか?
java - ジェネリック クラスを分割することは可能ですか?
を作成しようとしていますpublic class MyClass<T extends Parcelable> implements Parcelable。の実装に困っていますParcelable。を実装するジェネリック クラスを作成することは可能Parcelableですか? (Tも実装する必要があるように、 は制限されていることに注意してくださいParcelable)。
Parcelable インターフェースには静的変数が必要であるという事実で問題が発生しています: public static final Parcelable.Creator<MyParcelable> CREATOR。public static final Parcelable.Creator<MyClass<T>> CREATORしたがって、非静的であるため、私はできませんMyParcelable<T>。
アンドレ
android - カスタム オブジェクトを含むコレクションを含むモデルをパーセルする
私はこのクラスを持っています:
MyFoo および MyFoo2 クラスも Parcelable を実装していますが、ForeignCollection は実装していません。ForeignCollectionは、次のインターフェイスを実装するクラスです: Collection、CloseableIterable、および Iterable。
out.writeListForeignCollection は List インターフェースを実装していないので使えません。
android - クラスを直列化可能かつパーセル化可能にする必要がありますか?
現在作成中のAndroidアプリケーションのクラスを作成しました。アクティビティ間でこのクラスのオブジェクトを効率的に送信できるように、パーセル可能にしました。ただし、これらのオブジェクトも内部ストレージに保存したいと考えています。私が読んだことから、そのためにはクラスをシリアライズ可能にする必要があります。これらのオブジェクトを保存できる他の効率的な方法はありますか、それともクラスをシリアライズ可能にしても問題ありませんか?