我正在尝试通过Parse的REST API在我的Parse.com数据库中使用HttpsUrlConnection创建一个新对象.他们的REST API只接受JSON.我已经完成了所有工作,数据库将接受新的对象条目 - 除了我尝试包含Date字段时.当我传入日期时,服务器完全拒绝该对象.
我在他们的文档中找到了这个描述,用于在使用REST API时如何在对象中添加Date字段:
Parse移动客户端库还支持日期,二进制数据和关系数据.在REST API中,这些值被编码为JSON哈希值,并且__type字段设置为指示其类型,因此如果使用正确的编码,则可以读取或写入这些字段.
Date类型包含一个字段iso,其中包含以ISO 8601格式存储的UTC时间戳,精度为毫秒级:YYYY-MM-DDTHH:MM:SS.MMMZ.
{
"__type": "Date",
"iso": "2011-08-21T18:02:52.249Z"
}
Run Code Online (Sandbox Code Playgroud)
因此,如果我想创建一个新对象并将其传递给数据库,我假设我需要创建另一个JSONObject并将其传递到相应的字段中.然而,当我尝试时,它仍然拒绝它.下面是我尝试将Date对象添加为要传递的参数,存储在自己的JSONObject中.我究竟做错了什么?基于文档在JSON中发送Date对象的正确方法是什么?
//datePicked is a Calendar object
Date sendTime = datePicked.getTime();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
formatter.setTimeZone(TimeZone.getTimeZone("UTC"));
String sendTimeInUTC = formatter.format(sendTime);
//Storing the Date object as a JSONObject, as specified
JSONObject dateAsObj = new JSONObject();
dateAsObj.put("__type", "Date");
dateAsObj.put("iso", sendTimeInUTC);
//jsonParam is the JSONObject that is being sent over to Parse's REST API
jsonParam.put("sendTime", dateAsObj);
Run Code Online (Sandbox Code Playgroud)
这是完整的函数,它产生http请求,用于上下文和引用:
private void runHttpRequest(final String emailAddress, final String password, …Run Code Online (Sandbox Code Playgroud) 有没有办法使用fzaninotto 的 Faker生成 5 位邮政编码/邮政编码?
他提供的函数这样做,$faker->postcode不提供参数来限制其大小,所以它经常给出一个 9 位的邮政编码而不是 5,例如,10278-4159 而不是 10278。这对于播种数据库是有问题的,因为我的 sql数据库有一个 INT(5) 的邮政编码列。
我知道我可以使用 Faker 生成一个随机的 5 位数字,但我想知道是否有生成 5 位邮政编码的本地方式。
相当长一段时间以来,我一直在尝试调试我的设备在玩大型游戏时出现的重大滞后/卡顿现象。在对我的 logcat 进行了大量分析之后,我觉得我已经确定了导致难以忍受的延迟峰值的原因。每当出现滞后峰值时,logcat 中就会始终显示以下错误:
E/lowmemorykiller:
Error opening /dev/memcg/apps/uid_99032/pid_5430/memory.soft_limit_in_bytes; errno=2
Run Code Online (Sandbox Code Playgroud)
它反复出现,就好像它一遍又一遍地试图杀死它一样。UID 和 PID 有时会有所不同。据推测,主线程每次试图杀死它但未能成功时都会挂起很短的时间。为什么会发生这种情况?
下面的错误也重复出现,混合在上述错误的出现中。这可能与问题有关:
E/ANDR-PERF-RESOURCEQS: Failed to apply optimization [4,0]
Run Code Online (Sandbox Code Playgroud)
有时它会[2,0]代替[4,0]. 这些消息在我的 logcat 中显示得确实过多。
检查我的活动进程后,提到的 UID 和 PID 始终与Android System Webview. 我通过转到“设置”中的“开发人员选项”中的“运行进程”找到了这些进程的源应用程序。在那里,正在运行的进程被列为com.google.android.webview:sandboxed_process0,并且对于每个可能具有正在运行的 Web 视图的应用程序来说,它有多个实例。通过检查该进程的信息,可以得知哪个包启动了它。因此,它们源自我手机上的各种应用程序,有时甚至是我正在玩的游戏本身。因此,这似乎是内核的 lowmemorykiller (LMK) 模块的问题,比我安装的任何特定应用程序更有可能出现问题。
任何人都知道导致此问题的原因、错误的真正含义、如何修复或解决它、为什么 LMK 无法杀死 webviews,或者到底发生了什么?我至少正在寻找一种方法来控制 LMK 忽略尝试杀死 webview,以防止它在失败时挂起主线程,或者强制它成功杀死它们。
由于某种原因,我在 Kernel Adiutor 中没有修改 LMK 参数的部分。我的手机正试图(大概)杀死这些网页视图,尽管仍然有大量可用的可用 RAM,但min_freeKernel Adiutor 中的参数远不及我当时剩余的可用 RAM 量,所以有些事情正在发生在。
我一度怀疑这可能是由于我的手机上安装的应用程序数量过多(800-900)造成的。我已将其降低到约 600 个应用程序,但问题仍然存在。我认为拥有太多应用程序不再是问题,尽管它肯定可能是。
我正在运行官方 ResurrectionRemix 8.1 ROM,并使用 ROM 的默认内核和固件。这个问题出现在非官方 RR LuisROM 上,甚至在我完全擦除/干净刷新到我当前使用的官方 RR …