Background 手机锁定时J2ME系统通知/播放声音

Background 手机锁定时J2ME系统通知/播放声音,background,notifications,java-me,midlet,Background,Notifications,Java Me,Midlet,大家好 我有一部基于java的手机(三星star 2 5260),我花了三周时间试图想出一个解决方案来接收收到的电子邮件通知。 手机配置了至少30分钟的定期检查,但我需要更频繁的控制(最多5分钟) 我已经尝试了无数种解决方案,我已经找到了最接近的一种,那就是一个定制的mujmail midlet,它通过imap支持我的gmail邮箱,多亏了netbeans编辑器才得以部署。 关键是,我已经修改了mujmail的轮询在后台运行,但是当手机锁定时音频不会播放,所以即使midlet检查并接收电子邮件,

大家好

我有一部基于java的手机(三星star 2 5260),我花了三周时间试图想出一个解决方案来接收收到的电子邮件通知。 手机配置了至少30分钟的定期检查,但我需要更频繁的控制(最多5分钟)

我已经尝试了无数种解决方案,我已经找到了最接近的一种,那就是一个定制的mujmail midlet,它通过imap支持我的gmail邮箱,多亏了netbeans编辑器才得以部署。 关键是,我已经修改了mujmail的轮询在后台运行,但是当手机锁定时音频不会播放,所以即使midlet检查并接收电子邮件,它也无法通知我。应用程序最小化并继续运行,但它无法告诉我新邮件已经到达

我甚至尝试在有新邮件时发送短信,但无法对应用程序进行签名(看起来ktoolbar生成1024位证书,而thawte、verisign等几年后只能生成2048位证书),因此它总是请求授权,这使得这种方法毫无用处

所以我非常想找到另一个选择

我希望我们能在某种程度上模拟手机被锁定时使用的“系统警报”,你会收到短信(音频提示)。 这是j2me功能,还是特定于三星sdk? 有人知道如何从midlet内部访问此功能吗? 有没有办法在受信任的第三方域中创建midlet而不进行签名

我知道j2me是一门古老的学科,但希望这里有人对它仍然很了解


提前谢谢。

看来您对JavaME的期望太高了

如果可以做你想做的事,你可以确定它需要签名。 基本上,您必须使用手机支持的证书对MIDlet进行签名。大多数开发人员选择Thawte或Verisign,因为大多数设备都支持他们的证书

如果你只想让它在你自己的手机上运行,你可能会找到更便宜的供应商,比如三星自己。但我承认我不知道

在任何情况下,当你想用JavaME做这样的事情时,都无法绕过签名

(嗯……手机允许您设置权限的可能性很小,比如安装后在手机的MIDlet属性中“永不询问”,但可能性很小)

即使在签署了MIDlet之后,它仍然无法唤醒手机。JavaME是一个沙箱。如果用户让手机进入睡眠状态,JavaME就无法唤醒它。(至少没有特殊的API,我认为这是不存在的)

如果是我,我会调查这种方法:

实现PushRegistry定时器,每5分钟启动一次MIDlet。从理论上讲,尽管手机处于休眠状态,它还是应该启动MIDlet。(但如果它已关闭,则不会)。 如果您可以在此处播放警报声,请尝试。
如果你不能,那么我会考虑给自己发短信。

PushRegistry。看起来是个好主意,谢谢你的提醒。我来看看。即使是一个愚蠢的midlet,每30秒只播放一次声音,pushregistry也无法在手机锁定时执行此任务:(.不确定下一步该怎么办。我怀疑这取决于设备。另一部手机可能会给你一个不同的结果,即尽管设备被锁定,它仍会播放声音。但是,由于它在三星设备上无法工作,我想你要么切换到另一种技术,要么,如果你想继续使用JavaME,那么你必须签署你的MIDlet,然后使用发送短信给自己的方法代替。