ANDROID:电子邮件客户端接收器电子邮件 ID 在 android-parse 中为空
Posted
技术标签:
【中文标题】ANDROID:电子邮件客户端接收器电子邮件 ID 在 android-parse 中为空【英文标题】:ANDROID: email client receiver email id empty in android-parse 【发布时间】:2017-08-15 13:36:42 【问题描述】:我在应用程序中使用 android-parse 服务器。下面是电子邮件列的解析数据库截图。 电子邮件列在数据库中隐藏密码列之后。
我的问题是
当我将电子邮件 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;
【问题讨论】:
尝试记录 ParseException 你将能够知道错误 没有错误显示。只有 null 是 return 。所以在这段代码中,如果 null 我添加了隐藏..但实际上电子邮件 ID 在那里..?是因为电子邮件列在密码列之后吗? @阿里桃妮 可能是因为你必须在日志中将 object.get("email") 更改为 object.getString("email") 在解析的其他表中没有兄弟相同的代码工作,但该列没有隐藏密码..隐藏密码列是否可能阻止获取数据? @阿里桃妮 你能打印出你的json对象吗,你可以看看里面有什么数据 【参考方案1】:如果 jsonObject 不为空,请检查您从中提取数据的解析数据库是否具有“电子邮件”标签
【讨论】:
屏幕截图有问题,请检查。 .电子邮件标签位于隐藏密码列之后是否导致无法检索电子邮件 ID? @Oniyide Ibukun Olaoluwa 试试 Log.d("Object", jsonObject.toString());检查结果是否包含电子邮件,如果是,检查结果以查明它的 excat 位置,您可以发布响应以便我们一起调试它 嗨,没有结果为空@Oniyide Ibukun Olaoluwa以上是关于ANDROID:电子邮件客户端接收器电子邮件 ID 在 android-parse 中为空的主要内容,如果未能解决你的问题,请参考以下文章