转贴——S60不用插件获取情景模式与铃音文件的方法

[精华区]
情景, 模式, 插件, 文件, 获取
本文出自qxiaoyuan哥。
一直以来为了读取/设置到用户的情景模式, 短信提示音, 都是很郁闷的使用nokia提供的mr的plugin api和fp1自己的api, 因为不同, 所以必须发布2个版本, 提交express时浪费了无数的money和精力(维护, 验证, 测试).

后来, 读到子腾大侠的无敌吸星大法, 才知道还有种方法敲开symbian的重重内幕, 今天终于下定决心, 参考子腾大侠的

http://discussion.forum.nokia.co ... p=524967#post524967

无敌吸星大法, 解决了这个问题,
比较发现
0x101F8798是CRepository的key,
而0x7e000001是情景模式的index,
短信提示音是mode的一个位移算法, 类似的手机铃音只是下一个值而已,
贴出我的测试代码的核心, 打击一看即知


Code:
const char* profile[] = { "biaozhun", "wusheng", "huiyi", "huwai", "xunhuji", "lixian", };
CRepository* cenrep = CRepository::NewLC(TUid::Uid(0x101F8798));

TInt mode = -1;
User::LeaveIfError(cenrep->Get(0x7e000001, mode));

TInt k = mode << 24 | 0x04;
TFileName toneFile;
User::LeaveIfError(cenrep->Get(k, toneFile));

CleanupStack::PopAndDestroy(cenrep);

TBuf8<100> pm( (const TUint8*)profile[mode] );
TBuf<512> buf;
buf.Copy(pm);
buf.Append(_L("/r/n"));
buf.Append(toneFile);

CAknInformationNote* informationNote = new ( ELeave ) CAknInformationNote;
informationNote->ExecuteLD( buf );

再次感谢子腾大侠, 这个确实是潘朵拉魔盒, 打开了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值