如何使用google app engine从数据存储中检索信息,并使用java在android应用程序的列表视图中显示信息?

如何使用google app engine从数据存储中检索信息,并使用java在android应用程序的列表视图中显示信息?,java,android,google-cloud-datastore,Java,Android,Google Cloud Datastore,我正在尝试制作一个android应用程序,从google app engine数据存储中检索信息,并将其显示为android应用程序中的列表视图。有人能帮我编写一些代码或解释为此需要做些什么吗?我已经在服务器端进行了修改,将数据存储在数据存储中。我不知道如何将这些数据放到android应用程序上。我使用的是eclipse indigo,语言是java 编辑:我正在使用我的代码从数据存储中检索一组字符串,并将其放在列表视图中…代码看起来会乱七八糟,但我请您耐心听我说,并解释如何准确地编写它…目前,

我正在尝试制作一个android应用程序,从google app engine数据存储中检索信息,并将其显示为android应用程序中的列表视图。有人能帮我编写一些代码或解释为此需要做些什么吗?我已经在服务器端进行了修改,将数据存储在数据存储中。我不知道如何将这些数据放到android应用程序上。我使用的是eclipse indigo,语言是java

编辑:我正在使用我的代码从数据存储中检索一组字符串,并将其放在列表视图中…代码看起来会乱七八糟,但我请您耐心听我说,并解释如何准确地编写它…目前,每当我到达该检索字符串列表所在的页面时,应用程序都会强制关闭显示

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;
    }
}    '
公共类显示扩展了ListActivity
{
私人停车场;
专用矢量数据;
罗维达路;;
静态字符串[]标题;
@凌驾
创建时受保护的void(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.displaylayout);
MyRequestFactory=(MyRequestFactory)Util.getRequestFactory(Display.this,MyRequestFactory.class);
FebfourthRequest FebfourthRequest=factory.FebfourthRequest();
最终列表=新的ArrayList();
febfourthRequest.queryTrialDBs().fire(新的接收器()
{
@凌驾
成功时公共无效(列表arg0){
//TODO自动生成的方法存根
list.addAll(arg0);
}   
});
对于(inti=0;i来说,这已经是学习谷歌应用程序引擎和Android开发的一个很好的起点

我可以写下要遵循的步骤:

  • 编写一个Google App Engine应用程序,从数据存储中读取数据,并以JSON形式提供数据。您可以使用GAE web framework,或者Django。完成此操作后,您将有一个url,在浏览器中提供数据
  • 编写一个适用于Android的hello world应用程序。此步骤为您提供了了解和设置Android开发环境的机会
  • 编写一个Android应用程序,使用静态数据的listview
  • 通过从web调用单个简单url扩展Android应用程序,然后将其打印到屏幕上
  • 通过调用应用程序中的谷歌应用程序引擎应用程序url来扩展应用程序。现在,应用程序中有了数据存储数据
  • 用数据填充listview

  • 谢谢你的及时回复…我已经做了你提到的一些事情…有没有不使用JSON的方法可以做到这一点?我正在使用AppEngine连接的android项目..如果JSON是最好的选择..你能详细说明如何用一点代码包含它吗?JSON不是唯一的选项,你可以使用任何数据传输数据结构,例如作为XML或您自己的实现。JSON简单、轻量级,并受多种语言/库的支持。请尝试一些部分,并询问您遇到的其他问题。如果答案对您有帮助,您可以对其进行投票。参考您以前的答案…我已经完成了前3步..您能告诉我如何完成第4步吗?如何完成本文的第一部分是简单的解释:如果我的答案对你有帮助,考虑VoTIN。当你展示的文章很有帮助的时候,我正在寻找从谷歌App Engine而不是PHP服务器获取数据……如果你能帮我达到这个目的……GR8!PS:我真的不知道如何“投票”。为了得到一个答案,如果你想也告诉我…:D