如何实现Launcher与指定的Screenlock绑定

来源:互联网 发布:海量数据处理算法 编辑:程序博客网 时间:2024/05/16 07:49
以Fruit Launcher与Paiting的Screen Lock的绑定操作为例: 
在vapp_launcher_mm.cpp中增加如下语句: 
//MTK_add 
#include "vapp_screen_lock_setting_provider.h" 
#include "vapp_screen_lock_primitive.h" 
//MTK_add_end 
在vapp_launcher_mm.cpp中的VappLauncherMm::onEnter函数最后增加如下语句: 
//MTK_add 
VappScreenLockSettingProvider* provider = VFX_OBJ_GET_INSTANCE(VappScreenLockSettingProvider); 
VappScreenLockId m_defaultId; 
m_defaultId = provider->getDefaultScreenLock(this); 
m_defaultId.assignWith(VAPP_SCREEN_LOCK_SRC_NATIVE,4); 
provider->setDefaultScreenLock(m_defaultId, this); 
//MTK_add_end 
 
其他风格绑定操作一致,修改代码基本一样。 
只是修改的文件有别: 
cosmos launcher: vapp_launcher_cosmos_director.cpp中的oncreateview或onenter中修改。 
robot launcher: vapp_launcher_robot_directorr.cpp中修改oncreateview或onenter. 
另外修改代码时绑定的screen lock需要调整: 
m_defaultId.assignWith(VAPP_SCREEN_LOCK_SRC_NATIVE,4); 
参数中的数字4代表的是painting的screen lock. 
其他screen lock的数字可debug看一下。 
可以在VappScreenLockSettingProvider::setDefaultScreenLock加断点, 
然后选某个screen lock,断下来后看看参数id中的成员ival的值。这个值就代表是那个screen lock。 
原创粉丝点击