2012-02-07 3 views
0

Google App Engineのデータストアから情報を取得し、アンドロイドアプリでリストビューとして表示するアンドロイドアプリを作成しようとしています。誰も私にいくつかのコードを教えてくれるか、この目的のために何が必要なのかを説明してください。私はすでにデータストアにデータを格納するための変更をサーバー側で行っています。私は知らないが、アンドロイドアプリにそのデータを取得する方法です。私はインディゴを使用しており、言語はJavaです。Google App Engineを使用してデータストアから情報を取得し、Javaを使用してアンドロイドアプリのリストビューに表示する方法はありますか?

EDIT:私は私のコードを置くと、データストアから文字列のセットを取得してリストビューに置くことになります...コードはすべてのヘイワイヤーを見ていますが、私はあなたに私に同行し、それをどのように書くべきかを説明します。私は、検索文字列のリストが表示されるようになっているページを取得するたびにアプリケーションが...力閉鎖され

public class Display extends ListActivity 
{ 

    private LayoutInflater mInflater; 
    private Vector<RowData> data; 
RowData rd; 

static String[] title; 
@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.displaylayout); 


    MyRequestFactory factory = (MyRequestFactory)Util.getRequestFactory(Display.this,MyRequestFactory.class); 
    FebfourthRequest febfourthRequest = factory.febfourthRequest(); 
    final List<TrialDBProxy> list= new ArrayList<TrialDBProxy>(); 
     febfourthRequest.queryTrialDBs().fire(new Receiver<List<TrialDBProxy>>() 
    { 

     @Override 
     public void onSuccess(List<TrialDBProxy> arg0) { 
      // TODO Auto-generated method stub 
      list.addAll(arg0); 
     } 


    }); 


    for(int i=0;i<list.size();i++) 
    { 
     title[i] = list.get(i).getMessage(); 
    } 

    mInflater = (LayoutInflater) getSystemService(Activity.LAYOUT_INFLATER_SERVICE); 

    data = new Vector<RowData>(); 

    for(int i=0;i<title.length;i++) 
    { 
     rd = new RowData(i,title[i]); 
     data.add(rd); 
    } 
    int[] to = new int[] { R.id.text1, R.id.text2 }; 

    @SuppressWarnings("deprecation") 
    Cursor mCursor = this.getContentResolver().query(People.CONTENT_URI, null,  null, null, null); 
    ListAdapter adapter = new  SimpleCursorAdapter(this,R.layout.displaylayout,mCursor,title,to); 
    setListAdapter(adapter); 
    getListView().setTextFilterEnabled(true); 

} 
private class RowData 
{ 
protected int mId; 
protected String mTitle; 

RowData(int id,String title) 
{ 
mId=id; 
mTitle = title; 

} 
    @Override 
    public String toString() 
    { 
     return mId+" "+mTitle; 
    } 
} ' 

注:TrialDBは私が保存したいすべての私のフィールドを含むファイルですデータストア。 displaylayoutは、リストビューを作成したxmlファイルです。 私は物事を表示するためのコードを置く必要がある主要な部分は、onCreate()メソッド内にあると推測しています。 お願いします!

答えて

2

これはすでにです。 Google App EngineとAndroid Developmentの両方を学習するための非常に良い出発点です。

  1. データストアからデータを読み込み、JSONとして与えGoogleのApp Engineアプリケーションを書く:

    私はをフォローする手順が書き込むことができます。 GAEのWebフレームワーク、あるいは多分Djangoを使うことができます。これを実行すると、ブラウザにデータを提供するURLが作成されます。

  2. をAndroid用のhello worldアプリケーションに書き込みます。このステップでは、Android開発環境を理解して設定する機会が与えられます。
  3. 静的データを含むリストビューを使用するAndroidアプリを作成します。
  4. ウェブアプリから簡単な1つのURLを呼び出してAndroidアプリを拡張し、画面に表示します。
  5. のアプリ内でGoogle App EngineアプリケーションのURLを呼び出してアプリケーションを拡張します。これで、データストアのデータがアプリに格納されます。
  6. リストビューにデータを入力します。
+0

お返事ありがとうございました...私はすでにいくつかのことを述べています.JSONを使用せずにこれを行う方法はありますか?私はアプリエンジンを使用しているアンドロイドプロジェクトを接続しています.. JSONは最高のオプションです..あなたはちょっとしたコードでそれを含める方法を詳しく説明できますか? – Shanky

+0

JSONだけではありません。XMLや独自の実装など、あらゆるデータ転送データ構造を使用できます。 JSONはシンプルで軽量で、多くの言語/ライブラリでサポートされています。いくつかの部分を試して、あなたが経験する他の質問をしてください。彼らがあなたのために役立つ場合は、回答に投票することができます。 –

+0

あなたの前の答えをよく引用しています...私はすでに最初の3つのステップを行っています..あなたは4番目のステップを行う方法を教えてくれますか?どのようにアプリケーションにURLと印刷物を呼び出すのですか? – Shanky