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 中为空的主要内容,如果未能解决你的问题,请参考以下文章

android 11 kotlin 中的包可见性

如何在 Android 设备上接收新 Outlook 电子邮件的推送通知?

PHP 电子邮件客户端 - 克服缓慢的发送/接收

来自 AWS lambda 的内存中查找

python电子邮件系列(三)之POP接收邮件

在 Android 应用程序中接收邮件 - 程序总是在“连接”方法时立即停止