問題のAndroidプロジェクトでは、既にシリアライザブルを使用して内部モジュール間で情報を渡しています。パーサブルオブジェクトをシリアライズ可能なものとして送信
私は外部ライブラリを使ってナビゲーションルートを計算するこれらのモジュールの1つに取り組んでいます。
これらの「外部」オブジェクトの1つを別のモジュールに渡す必要があります。これはSerializableではないため、通常送信できません。私の前のプログラマーは、ラッパークラスの静的変数で直列化不可能なオブジェクトをすべて変換しましたが、モジュールが常にアクティブなままであるにもかかわらず、それが良いアイディアかどうかはわかりません。
これは、直列化ラッパークラスです:
private static Road road;
private NavigationStep firstNavigationStep;
/**
* To send the route information to the App. Here is everything the app needs to display the
* data to the user.
* @param road the route the user is to follow
* @param firstNavigationStep the users location and the current Step.
*/
public CurrentRoad(Road road, NavigationStep firstNavigationStep){
this.firstNavigationStep = firstNavigationStep;
this.road = road;
}
過渡は私が道路のために全体のラッパークラスは、あまりにも多くの仕事だろう書き込み、データを失うことになりますと道路を書く(そう、オーバーレイを構築するために必要とされます幾何学の多くは内部にあり、私は何かを忘れるかもしれないので、外部の図書館からです)。 Project全体をParcelableに変更することも現実的ではありません。
解決策はありますか?私が必要とするものを静的なものとして保存するのが最善の方法でしょうか?
このアーキテクチャでは、すでにメッセージサービスが記述されています。シリアライズ可能なものが使用されています。これは、他の誰かがプロジェクトに書いたMessageMangerです。 私はチームでちょっと新しく、プロジェクトは複数の会社にまたがっているので、外部ライブラリを追加することはそれほど簡単ではありません。 – Raeglan