如何使用之前的objectid保存图像

时间:2014-01-08 07:03:36

标签: android parse-platform

我分别有两个活动和两个ParseObjects。在一个活动中,我正在保存3个字符串,而在另一个活动中,我将Image保存到ImageView。它成功保存到Parse.com但具有不同的ObjectIds。我想将图像保存在其他表中。然后根据手机号码获取图像。我搜索了Parse.com中提到的文档,但无法解决此问题。

final ParseObject dataObject = new ParseObject("DataObject");
    dataObject.put("name", name);
    dataObject.put("mobilenumber", mobileNumber);
    dataObject.put("occupation", occup);
    dataObject.saveInBackground(new SaveCallback() {
          public void done(ParseException e) {
                if (e == null) {
                  // Success!
                   String objectId = dataObject.getObjectId();

                } else {
                  // Failure!
                }
              }
            });

    Toast.makeText(getBaseContext(), "Data successfully saved "+ objectId, Toast.LENGTH_LONG).show();

这是第一项活动。在下一个活动中,我正在保存图像。我想要ObjectId但它每次都说NULL。请帮助。

2 个答案:

答案 0 :(得分:1)

您可以将您的手机号码发送给您的下一个活动,例如:

public void onClick(View arg0) {

             progressDialog = ProgressDialog.show(LoadImg.this, "",
                        "Saving Image...", true);

            try {
                image = readInFile(path);
            }
            catch(Exception e) { 
                e.printStackTrace();
            }               
            ParseFile file = new ParseFile("picturePath.png", image);
            file.saveInBackground();    
            ParseObject imgupload = new ParseObject("Image");
            imgupload.put("ImageFile", file);
            imgupload.put("Mobilenumber", mob);


            // Create the class and the columns

在活动中,您可以从意图中获取手机号码,如:

ParseQuery<ParseObject> query = new ParseQuery<ParseObject>("Image");

            mobileNumber = mbltxt.getText().toString();
            query.whereEqualTo("Mobilenumber", mobileNumber);
            ob = query.find();

答案 1 :(得分:0)

这个怎么样。

您可以使用intent.putExtras(Bundle)Intent.putExtra(String, String)将三个字符串作为捆绑从第一个活动发送到下一个(第二个)活动,然后在第二个活动中,获取附加内容然后保存字符串和图像一起成为ParseObject。这也将减少对Parse的API请求数量。