2

Android アプリケーションに問題があります。私は現在CatDownloadService、バックグラウンドで2つのことを行うと思われる を持っています:

  1. サーバーから猫の情報(id、name、imageidなど)をJSONでダウンロード
  2. JSON を解析して Cat オブジェクトにする
  3. CatDatabaseAccessObject を介してデータベースに Cat オブジェクトを挿入します。
  4. 猫の画像をダウンロード
  5. 画像を外部ストレージに保存します。

これを達成するためのさまざまな方法を決定することはできないようです。誰かが私を正しい方向に向けることができますか? 各メソッドについて私が理解していることは、() 内にあります。

JSON を解析する

  1. CatDownloadService のメソッド (私の JSON 解析はこのクラスでのみ必要になるため)

    parseCatJSON(jsonString);
    
  2. CatJSONParser.java のメソッド (JSON 解析のロジックはそれ自体がクラスにあるため、より適切です)

    CatJSONParser catJsonParser = new CatJSONParser();
    catJsonParser.parseCatJSON(jsonString);
    
  3. CatJSONParser.java の static メソッド (2 と同じ。オブジェクトの作成は必要ありません)

    CatJSONParser.parseCatJSON(jsonString);
    

DatabaseAccessObject を介してデータベースに追加する

  1. CatDatabaseAccessObject.java のメソッド (DBHelper を使用するコンテキストはそれぞれ異なります)

    CatDatabaseAccessObject catDAO = new CatDatabaseAccessObject(this);
    catDAO.addCat(cat);
    
  2. CatDatabaseAccessObject.java の静的メソッド (DB への接続が 1 つだけであることを確認してください)

    CatDatabaseAccessObject.addCat(cat);
    

猫の画像を外部ストレージに保存する

  1. CatStorageManager.java のメソッド

    CatStorageManager catStorageManager = new CatStorageManager();
    catStorageManager.writeCatImage(catInputStream);
    
  2. CatStorageManager.java の静的メソッド

    CatStorageManager.writeCatImage(catInputStream);
    

私は本当に迷っています。

4

1 に答える 1

0

静的メソッドを 2 つの方法で分類します。

  • 誤解を招く不必要な参照を保持している場合は有害です。

    public static InputStream is = null;
    public static void harfulStaticMethod(InputStream is) {
    BatteryManagerC.is = is;
    /* Read Content */
    /* Leave open or is have used at multiple places */
    }
    
  • メソッド変数にアクセスするためにのみ使用される無害

    public static void unharmFullStaticMethod(int a, int b) {
    int c = a + b;
    Log.e("Some Is=", String.valueOf(c));
    }
    

あなたの質問は幅広く、多くのポイントにつながります。そのため、1つのビューを反映するだけです。それがあなたを助けることを願っています

于 2013-10-03T13:29:29.973 に答える