私は AAR ライブラリを持っており、インターフェイスを使用してhttp://developer.android.com/training/basics/fragments/communicating.htmlに Google パターンを実装しています。私の問題は、このライブラリで新しいアクティビティを開始し、メイン プロジェクトからデータを復元する必要がある場合です。ユーザーが他の多くのアプリを開くと、SO はメモリを消去する必要があるため、アプリを再度開くと、メインのアクティビティが失われ、リスナーからデータを取得しようとすると null になります。
これは、フラグメントがロードされたらリスナーを配置するクラスです
public class ContentCfg {
private static ContentCfg instance;
// Listener for handle other modules operations
private static ContentsMainFragment.OnFragmentInteractionListener listener;
public static synchronized ContentCfg getInstance() {
if (instance == null) {
instance = new ContentCfg();
}
return instance;
}
}
ご覧のとおり、問題はインスタンスが null の場合です。
私のリスナーはこんな感じです
public interface OnFragmentInteractionListener {
// contact methods
public String getDisplayNameForUid(String contactUid);
}
メイン プロジェクトは、SharePreferences などに保存できるデータだけでなく、DB を検索してデータを返す必要があります。
これをどのように処理しますか?AAR は、メイン プロジェクトと彼のクラスについて何も知りません。では、ライブラリの別のアクティビティでメイン プロジェクトから情報を取得するにはどうすればよいでしょうか。
ありがとう