1

特定のアイテムのID/キーを運ぶプッシュ通知を受信するためのブロードキャストレシーバークラスがあります。次に、RESTサービスを使用して電話をかけ、そのアイテムを取得して表示する必要があります。ただし、エラーが発生したり、手順が処理されたりすることはありません。これが完了したら、取得した特定のアイテムに対応する特定のアクティビティを開く必要があります。

private void retrieveItem(String key) {   
    String feedURI = mContext.getString(R.string.feed_uri_for_push)+"/";
    feedURI += key;     
    RestClient.connect(feedURI, 10, new HTTPData());
}

private class HTTPData implements RestInterface<InputStream>{

@Override
public void onError(Exception e) {
   //give error
}

@Override
public void receive(InputStream instream) {
     String result = RestClient.convertStreamToString(instream);
     JSONArray jsonArray = null;
     try {
             jsonArray = new JSONObject(result).getJSONArray(result); //using array for now.               
    } catch(JSONException e) {
        e.printStackTrace();
    }

    if(jsonArray == null) {
      return;
    }

    // Create Item based on content
    for (int i = 0; i < jsonArray.length(); i++) {
    try {
        if(i > 1){
        break;
    }

            JSONObject preItem = jsonArray.getJSONObject(i);
            ConvertItem item = new NewsItem(rawItem);
            newItem =item;
            } catch (JSONException e) {
              e.printStackTrace();
        }   
     }      
     }
 }
4

1 に答える 1

0

インテントを使用してキーを別のクラスに渡し、代わりにそこから残りの呼び出しを行うことで、これを解決しました。

于 2012-11-07T22:03:18.713 に答える