none
一键锁屏如何实现? RRS feed

  • 问题

  • 市集上出现神作一键锁屏,但印象中微软没有开放此API,想询问开发君大神如何实现此功能?

    http://www.windowsphone.com/zh-tw/store/app/快速磁贴/1725cca2-2349-4d33-b5d5-8b04e7810c04

    2013年12月25日 14:17

答案

  • 怎么说了半天,你也不相信,不信你可以试试啊,我就在wp商店发布过一键锁屏的应用,

    我说的也是手机,具体步骤是:

    1.新建windows phone应用程序,

    2.新建“windows运行时组件库”,必须是win8.0的版本的,

    3.在“windows运行时组件库”通过p/invoke调用锁屏api(代码前面给你过),并提供一个对外的接口,

    4.“windows运行时组件库”会生成的*.winmd文件,

    5.windows phone应用程序,引用这个*.winmd文件(“windows运行时组件库”生成的winmd文件可以被windows phone应用程序引用)

    6.调用winmd类库中提供的锁屏接口,实现锁屏,

    期间要注意:

    1.两个项目生成的目标平台,必须是arm平台,

    2.“windows运行时组件库”这个项目必须是windows 8版本(8.1不行),如果你用的是windows 8.1 + vs2013开发环境,只能开发windows 8.1的运行时组件库,需要手动修改项目文件使其版本为8.0,

    再次提醒:这是windows phone 8锁屏的实现方式,目前只有这一个api能实现锁屏,但部分网友反映一键锁屏会使机子发热,在我的手机上没遇到过发热现象,

    2014年2月15日 4:33

全部回复

  • 文章内并没有说明如何制作.

    2013年12月27日 1:52
  • 确实没有相关API这是开发者自己找到的方法,具体情况你只有询问相关的开发者了
    2014年1月5日 9:32
  • 建立“windows运行时组件”项目,在项目中使用DllImport方式调用本地api:

    [DllImport("ShellChromeAPI.dll")]
    private extern static void Shell_TurnScreenOn(bool value);

    你的WP应用程序再引用这个“运行时组件”

    2014年1月24日 3:32
  • 建立“windows运行时组件”项目,在项目中使用DllImport方式调用本地api:

    [DllImport("ShellChromeAPI.dll")]
    private extern static void Shell_TurnScreenOn(bool value);

    你的WP应用程序再引用这个“运行时组件”

          亲,WindowsPhoneRuntimeComponent是C++的。
    2014年1月25日 16:27
  • 建立“windows运行时组件”项目,在项目中使用DllImport方式调用本地api:

    [DllImport("ShellChromeAPI.dll")]
    private extern static void Shell_TurnScreenOn(bool value);

    你的WP应用程序再引用这个“运行时组件”

          亲,WindowsPhoneRuntimeComponent是C++的。

    2014年2月14日 4:56
  • 建立“windows运行时组件”项目,在项目中使用DllImport方式调用本地api:

    [DllImport("ShellChromeAPI.dll")]
    private extern static void Shell_TurnScreenOn(bool value);

    你的WP应用程序再引用这个“运行时组件”

          亲,WindowsPhoneRuntimeComponent是C++的。


    亲,这是WindowsPhone论坛。人家问的是手机。
    2014年2月14日 8:31
  • 怎么说了半天,你也不相信,不信你可以试试啊,我就在wp商店发布过一键锁屏的应用,

    我说的也是手机,具体步骤是:

    1.新建windows phone应用程序,

    2.新建“windows运行时组件库”,必须是win8.0的版本的,

    3.在“windows运行时组件库”通过p/invoke调用锁屏api(代码前面给你过),并提供一个对外的接口,

    4.“windows运行时组件库”会生成的*.winmd文件,

    5.windows phone应用程序,引用这个*.winmd文件(“windows运行时组件库”生成的winmd文件可以被windows phone应用程序引用)

    6.调用winmd类库中提供的锁屏接口,实现锁屏,

    期间要注意:

    1.两个项目生成的目标平台,必须是arm平台,

    2.“windows运行时组件库”这个项目必须是windows 8版本(8.1不行),如果你用的是windows 8.1 + vs2013开发环境,只能开发windows 8.1的运行时组件库,需要手动修改项目文件使其版本为8.0,

    再次提醒:这是windows phone 8锁屏的实现方式,目前只有这一个api能实现锁屏,但部分网友反映一键锁屏会使机子发热,在我的手机上没遇到过发热现象,

    2014年2月15日 4:33
  • 怎么说了半天,你也不相信,不信你可以试试啊,我就在wp商店发布过一键锁屏的应用,

    我说的也是手机,具体步骤是:

    1.新建windows phone应用程序,

    2.新建“windows运行时组件库”,必须是win8.0的版本的,

    3.在“windows运行时组件库”通过p/invoke调用锁屏api(代码前面给你过),并提供一个对外的接口,

    4.“windows运行时组件库”会生成的*.winmd文件,

    5.windows phone应用程序,引用这个*.winmd文件(“windows运行时组件库”生成的winmd文件可以被windows phone应用程序引用)

    6.调用winmd类库中提供的锁屏接口,实现锁屏,

    期间要注意:

    1.两个项目生成的目标平台,必须是arm平台,

    2.“windows运行时组件库”这个项目必须是windows 8版本(8.1不行),如果你用的是windows 8.1 + vs2013开发环境,只能开发windows 8.1的运行时组件库,需要手动修改项目文件使其版本为8.0,

    再次提醒:这是windows phone 8锁屏的实现方式,目前只有这一个api能实现锁屏,但部分网友反映一键锁屏会使机子发热,在我的手机上没遇到过发热现象,

    实验成功,给大神跪了。这个东西太有用了。
    2014年2月17日 7:09
  • 鸭的,原来8.1也是可以的!直接建一个      Blank App(Windows Phone)     类型的项目,不需要什么组件,在调用下面的代码,测试通过。C++上就尴尬了。

            [DllImport("ShellChromeAPI.dll")]
            private extern static void Shell_TurnScreenOn(bool value);
            private void Button_Click(object sender, RoutedEventArgs e)
            {
                Shell_TurnScreenOn(false);
            }

    2014年4月24日 15:28
  • 那么问题来了

    商店认证不能通过,拿来做毛。。。。

    2014年11月12日 7:21