我在应用程序中使用 android-parse 服务器。下面是电子邮件列的解析数据库屏幕截图。
电子邮件列位于数据库中隐藏密码列之后。
![parse database screenshot](https://i.stack.imgur.com/DD3P3.png)
我的问题是
当我向电子邮件客户端检索电子邮件 ID 时,
即使 email 列有 emails , email 也为 null 。
注意:在应用程序的另一个地方(另一个表)中,我以相同的方式将电子邮件 ID 拉到电子邮件客户端,但是邮件显示良好..仅在这里出现问题。
如果有人知道请帮忙吗?
这是解析数据库中的电子邮件列
try{
JSONObject jsonObject = parseObjectToJson(object);
Log.d("Object", jsonObject.toString());
Log.d("Email", "+" + object.get("email"));
personNumber = jsonObject.getString("telephone");
personEmail = jsonObject.getString("email");
}catch (JSONException je){
}catch (ParseException pe){
}
这是电子邮件按钮
emailPerson = (Button)findViewById(R.id.individualEmail);
emailPerson.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(Intent.ACTION_SEND);
i.setData(Uri.parse("mailto:"));
i.setType("plain/text");
i.putExtra(android.content.Intent.EXTRA_EMAIL, new String[] {personEmail});
startActivity(i);
}
});
if(personEmail==null || personEmail.equals("") || personEmail.equals(" ")){
emailPerson.setClickable(false);
emailPerson.setEnabled(false);
emailPerson.setVisibility(View.GONE);
}
else{
emailPerson.setEnabled(true);
emailPerson.setClickable(true);
emailPerson.setVisibility(View.VISIBLE);
}
在这里它工作正常,但这是同一数据库中的不同表。 >在此表中没有隐藏密码字段
try{
corporateEmail = jsonObject.getString("email");
if(corporateEmail == null || corporateEmail.equals("")){
emailCorporate.setVisibility(View.GONE);
emailCorporate.setEnabled(false);
emailCorporate.setClickable(false);
}
emailCorporate = (Button) findViewById(R.id.corporateEmail);
emailCorporate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(Intent.ACTION_SEND);
i.setData(Uri.parse("mailto:"));
i.setType("plain/text");
i.putExtra(Intent.EXTRA_EMAIL, new String[] {corporateEmail});
startActivity(i);
}
});
private JSONObject parseObjectToJson(ParseObject parseObject) throws ParseException, JSONException, com.parse.ParseException {
JSONObject jsonObject = new JSONObject();
parseObject.fetchIfNeeded();
Set<String> keys = parseObject.keySet();
for (String key : keys) {
Object objectValue = parseObject.get(key);
if (objectValue instanceof ParseObject) {
jsonObject.put(key, parseObjectToJson(parseObject.getParseObject(key)));
} else if (objectValue instanceof ParseRelation) {
} else {
jsonObject.put(key, objectValue.toString());
}
}
return jsonObject;
}