大哥,Brew平台能实现开机自启动吗
hi 各位:1. Brew平台能程序实现开机自启动吗
2. 我看到有的贴子说可以,不知过程是怎么样的;
3. 有的兄弟说这样做很危险,程序一旦crash,手机就废,没这么夸张吧,难道不能硬格式化?
小弟在这感谢了!
--------------------编程问答--------------------
我之前说过很危险的 呵呵 好像要处理一个notify的消息 然后在mif里面要做些设定。
我说危险的原因是我是做应用程序开发的,不能自己烧ROM
所以我的应用依赖于手机启动=》apploader连接手机=》添加删除文件等等
如果我的手机开机就重启我就无法连接apploader 就无法删除导致crash的程序
所以这个手机我就没法用了
但是如果你是oem厂商 那多尝试几次问题不大 大不了重烧ROM --------------------编程问答-------------------- 没问题,通过notification实现 --------------------编程问答-------------------- 前段时间按讨论过这个问题
兰州可以搜索一下类似的帖子 --------------------编程问答-------------------- --------------------编程问答-------------------- 说点别的方面供参考
如果你能做成静态App的话,很简单的,修改手机base添加你的App成为开机启动。
但是这又会涉及你手机的平台是65xx还75xx,会不一样,呵呵
--------------------编程问答-------------------- BREW平台可以做到开机就自启动BREW 应用,这需要在MIF中做如下设置:
MIF Editor/applets/Notifications,flags,settings/
进入后再选:
notifications/Notifier: AEECLSID_SHELL
notifications/Mask: NMASK_SHELL_INIT
这相当于手机在开机后即注册了SHELL_INIT 的notification消息, 即相当于应用管理器在开机后自动运行了下面的代码:
ISHELL_RegisterNotify (pIShell, AEECLSID, MyAppCls, NMASK_SHELL_INIT);
如若应用想将自己启动起来,则需要处理此notification消息,如下:
case EVT_NOTIFY:
{
AEENotify* pNotify = (AEENotify*) dwParam;
if (pNotify && (pNotify->cls == AEECLSID_SHELL)) // event sender
{
if ((pNotify->dwMask & NMASK_SHELL_INIT) == NMASK_SHELL_INIT)
{
// AEECLSID_SHELLINIT 为本应用
ISHELL_StartApplet(pMe->a.m_pIShell, AEECLSID_SHELLINIT);
}
}
}
--------------------编程问答-------------------- 学习了,好贴 --------------------编程问答-------------------- 正好我也在做这个题目,谢谢了! --------------------编程问答-------------------- 我倒是实现了自启动,做了两个程序,一个随机启动,另一个锁定手机。让随机启动的程序调用锁手机程序,结果机器启动不了了,也连不上电脑。。。。。怎么办? --------------------编程问答-------------------- 开机自启动完全可行,应用使用时一般结合“后台技术”一起使用。
使用 BREW 2.x 如果开机自启动有问题的确很危险,但是到BREW 3.x之后,手机在充电状态下就可以链接PC,这时删除掉有问题的应用,可以解决问题。 --------------------编程问答--------------------
3.x可以在充电状态下连接PC?我们用的酷派E200怎么不行啊?这烂手机必须启动才能连接PC。。
--------------------编程问答-------------------- 我在让程序获取EVT_END事件的时候,赋予了phone权限,然后程序也能随机启动了。。。都没有设置NMASK_SHELL_INIT。。。。
补充:移动开发 , Brew