Windows Phone 锁屏下连接插座

2024-01-28

我尝试编写使用套接字连接到服务器的应用程序。一切正常,但是当应用程序在锁屏下运行时,套接字无法连接(它正在等待锁屏被删除)。

设备连接到 PC,因此 WiFi 不应影响(自动关闭)以节省电池电量

如何重现(代码如下):

1) 启动应用程序并等待 30 秒。在调试窗口中您将看到:

Try to connect at 15:35:08
Connected at 15:35:08

2) 启动应用程序,锁定屏幕并等待 30 秒。在调试窗口中您将看到:

Try to connect at 15:36:07
Connected at 15:36:42

因此,在锁定屏幕期间没有任何反应,套接字被冻结

这是我的代码:

    public MainPage()
    {
        InitializeComponent();

        PhoneApplicationService.Current.ApplicationIdleDetectionMode = IdleDetectionMode.Disabled;

        DnsEndPoint dnsEndPoint = new DnsEndPoint("stackoverflow.com", 80);
        Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
        SocketAsyncEventArgs socketOperationEventArguments = new SocketAsyncEventArgs();
        socketOperationEventArguments.RemoteEndPoint = dnsEndPoint;
        socketOperationEventArguments.Completed += (s, e) =>
        {
            if (e.SocketError == SocketError.Success && e.ConnectSocket.Connected)
            {
                Debug.WriteLine("Connected at " + DateTime.Now.ToLongTimeString());
            }
        };

        DispatcherTimer Timer = new DispatcherTimer()
        {
            Interval = TimeSpan.FromSeconds(10)
        };
        Timer.Tick += (s, e) =>
        {
            Debug.WriteLine("Try to connect at " + DateTime.Now.ToLongTimeString());
            socket.ConnectAsync(socketOperationEventArguments);

            Timer.Stop();
        };
        Timer.Start();
    }

EDIT:

在锁定屏幕下也无法发送数据。日志:

Try to connect at 10:18:39
Connected at 10:18:39
Try to send at 10:18:40
Send data at 10:18:40
Try to send at 10:18:41
Send data at 10:18:41
Try to send at 10:18:42
Send data at 10:18:42
Try to send at 10:18:43
Try to send at 10:18:44
Try to send at 10:18:45
Try to send at 10:18:46
Try to send at 10:18:47
Try to send at 10:18:48
Try to send at 10:18:49
Send data at 10:18:50
Send data at 10:18:50
Send data at 10:18:50
Send data at 10:18:50
Send data at 10:18:50
Send data at 10:18:50
Send data at 10:18:50
Try to send at 10:18:51
Send data at 10:18:51
Try to send at 10:18:52
Send data at 10:18:52

10:18:43 至 10:18:50 屏幕被锁定


在 Mango 中激活锁屏时,套接字不会接收任何数据。 目前尚无已知的解决方法。

在这里查看更多信息:

http://irc7.org/index.php/2011/09/07/why-doesnt-irc7-run-under-lock-screen/ http://irc7.org/index.php/2011/09/07/why-doesnt-irc7-run-under-lock-screen/

您可以做的就是首先尝试阻止锁定屏幕出现。 有关如何执行此操作的更多信息,请参阅此处:

http://msdn.microsoft.com/en-us/library/microsoft.phone.shell.phoneapplicationservice.useridledetectionmode%28VS.92%29.aspx http://msdn.microsoft.com/en-us/library/microsoft.phone.shell.phoneapplicationservice.useridledetectionmode%28VS.92%29.aspx

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Windows Phone 锁屏下连接插座 的相关文章

  • 在 ResourceDictionary 文件中使用 viewbox

    我有 ResourceFile1 xaml 文件 其内容
  • 带有图像或路径的自定义滑块

    我的 WP7 应用程序中有一个滑块 我想重新设计它的样式 我的默认模板有问题 我做了类似的事情 但我无法将拇指 绑定 到该值
  • WP7 上的 POST 请求

    我花了大约 6 个小时试图弄清楚如何在 WP7 中发出常规 POST 请求 我尝试了此处和许多其他地方发布的类似问题的答案 我还尝试了许多不同的 API POST 请求 它们都导致针对某一特定问题 远程服务器返回错误 NotFound 好像
  • 如何在 C# 中的 HttpClient 中使用凭据?

    我在使用 HttpClient 类访问 Delicious API 时遇到一些问题 我有以下代码 try const string uriSources https api del icio us v1 tags bundles all p
  • Windows Phone 7 浏览器 - 单击链接时关闭灰色阴影

    使用 Windows Phone 7 浏览器 当用户单击链接时 该链接会显示一个灰色矩形阴影大约 0 5 秒 一般来说 这很好 但是 如果您有动态页面行为 例如 单击链接会更新 DOM 以便该链接不再可见 则在链接本身消失后 不透明的灰色矩
  • 多个事件处理程序触发,为什么?

    我很难解决这个问题 我已经呆了三个小时了 但我仍然不明白为什么会这样 这是代码 private void Catagory SelectionChanged object sender SelectionChangedEventArgs e
  • 我如何在 C# .NET(win7 手机)中使用“DataContractJsonSerializer”读入“嵌套”Json 文件?

    我有一个问题 如果我的 json 文件看起来像这样 Numbers 45387 Words 空间桶 我可以很好地阅读它 但是如果它看起来像这样 Main Numbers 45387 Words 空间桶 某事 数字 12345 单词 克兰斯基
  • 只允许输入字母

    如何过滤虚拟键盘中的非字母键 以下方法仅适用于拉丁字母 不幸的是 public static bool IsLetter int val return InRange val 65 90 InRange val 97 122 InRange
  • WP7:将参数传递到新页面?

    在 Windows Phone 7 Silverlight 应用程序中 我使用以下命令调用新页面 NavigationService Navigate new Uri View SecondPage xaml UriKind Relativ
  • 为 Windows Phone 7 创建自定义 InputScope

    在哪里可以找到创建自定义 InputScope 的教程 我想创建一个自定义键盘 在屏幕键盘上仅显示数字 1 9 无符号 您无法创建自定义输入范围 以下是支持的范围输入范围名称值枚举 http msdn microsoft com en us
  • 如何在 XAML 中使用其他项目的图像?

    我正在构建一个包含多个项目的解决方案 Windows Phone 应用程序 其中一个项目是用于 品牌 的 它包含一些特定的代码和图像 其想法是该项目可以更换为不同的品牌 我的应用程序页面位于主项目中 我想在主应用程序的 UI 中显示存储在第
  • 如何检测 toolkit:GestureListener Hold 何时停止?

    有什么方法可以检测到这一点吗 我想只要用户按住图标就继续执行操作 而不是使用GestureListener为此 您可以使用鼠标操作事件来检测执行操作的时间 例如 听听MouseLeftButtonDown了解用户何时触摸了图标 继续执行该操
  • 如何创建一个快速加载的包装列表框?

    我制作了一个很好的小三项宽列表 用作开关 它看起来像这样 看起来不错吧 好吧 我在垂直滚动列表中大约有 130 个这样的图块 并且需要很长时间才能加载 根据性能分析工具 每个元素的渲染时间约为 18 毫秒 这给了我大约 2 3 秒的渲染时间
  • 使用 Linq to XML 将 XElement 添加到 XML 文件

    使用 Linq to XML 我尝试将 XElement 添加到现有 XML 文件 它必须在 Windows Phone NET 框架中完成 目前我的 XML 文件如下所示
  • 在 WP7 中,当页面上存在 WebBrowser 控件时,TextBox.Focus() 不起作用

    我需要将焦点设置在文本框上 问题是 当页面上存在 WebBrowser 控件时 SIP 会显示为就像选择了文本框一样 但光标在文本框中不可见 并且输入不会转到文本框 如果我注释掉 WebBrowser 控件 则行为如预期 加载页面时光标在文
  • 如何让我的 Windows Phone 7 应用程序出现在 Windows Phone 8 市场中?

    当我进行构建时 我一定做错了什么 我希望当前的更新适用于 Windows Phone 7 和 Windows Phone 8 我正在使用 WP8 SDK 并面向 OS 8 当我上传 XAP 时 我得到了 AnyCPU xap 现在我的应用程
  • 如果 html5

    我的应用程序隔离存储中有视频文件 并且想使用视频标签从 html 播放它 视频播放器运行 然后挂在 正在加载 有人可以设法使用 html5 视频标签和独立存储来播放视频吗 我的观察和测试 HTC HD7 Mango Beta 2 7 10
  • 如何在 WP7 应用程序磁贴中隐藏应用程序标题

    我不想在 Windows Phone 7 的磁贴中显示应用程序名称 就像 Netflix 或 Facebook 应用程序那样 但当我尝试将其设置为空 甚至是空白区域 时 Visual Studio 抱怨标题为空不允许 知道如何实现这一目标吗
  • 由于图形处理单元配置,不支持 Windows Phone 模拟器(Mac 上的 Windows 7)

    启动 Windows Phone 模拟器时出现错误 不支持 Windows Phone 模拟器 因为您的计算机没有所需的图形处理单元配置 如果没有图形处理单元 XNA 框架页面将无法运行 您想继续启动模拟器吗 当我尝试访问网页 任何网页 时
  • 覆盖 Windows Phone 7 中的主题

    有没有办法让控件只使用深色或浅色主题 我正在开发一个大部分是深色的应用程序 我们有一些深色的自定义背景 所有文本块都已处理 它们始终是白色的 但是按钮 文本框 复选框 单选按钮 当手机主题设置为浅色时 所有这些都会变成黑色 并且几乎看不见

随机推荐