由于wp系统对开发者相对封闭,造成了用户对那些稍有用处但又不那么有用的功能过度追求,比如说重启、锁屏等功能。针对一个功能写两行代码,再起一个牛逼哼哼的名字,就可以获得超级多的下载量。
我们可以得出两个结论,1.wp的用户是相当积极的。2.单一功能的应用抓住用户的心理也可以短时间内获得比较多的下载。但是单一功能的应用在长期竞争中并不占优势,后边很有可能被其他应用取代。
如何代码重启手机已经在前一篇文章中讲了,有兴趣的可以阅读 wp如何代码重启手机。
下边说一下如何实现锁屏。
如图,新建一个Windows Runtime Component项目,如果没有的话可以安装windows8 sdk。
利用DllImport引入ShellChromeAPI.dll, 将Shell_TurnScreenOn(bool value)方法包装到一个公开方法里即可。如下是我的代码:
public sealed class FastClock { [DllImport("ShellChromeAPI.dll")] private extern static void Shell_TurnScreenOn(bool value);
public static void TurnScreen(bool isOn) { Shell_TurnScreenOn(isOn); } }
参数为false时,是锁屏。
生成项目,注意在项目属性中选择arm平台,在bin/release中会生成*.winmd的文件。再到自己的windows phone工程中引入生成的*.winmd文件,这样就可以调用了。
总之,wp没有提供API去实现锁屏功能,但是C++动态链接库中可以做到,所以需要C++的动态链接库来实现。既然不是官方的API,安全性上就不能百分百的保证,请谨慎使用。