我在app中使用android-parse服务器。下面是电子邮件列的解析db截图。 电子邮件列位于数据库中的隐藏密码列之后。
我的问题是
当我将电子邮件ID检索到电子邮件客户端时, 即使电子邮件列中有电子邮件,电子邮件仍为空。
注意:在另一个地方的应用程序(另一个表)中我以同样的方式将电子邮件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;
}
答案 0 :(得分:2)
如果jsonObject不为null,请检查您从中提取数据的解析数据库是否包含&#34; email&#34;标签