手机锁屏后有时收不到微信通知,有时又能收到是怎么回事?

126 篇文章 0 订阅
122 篇文章 0 订阅

  手机锁屏后有时接不到微信通知,有时可以收到微信通知。出现这种情况的原因有两种,一种是设置不当,另外一种是运营商的网络原因。

  微信通知接收设置

  苹果手机和安卓手机对微信消息推送的设置是不同的。相比之下,安卓手机的信息接收更复杂一些,下面分别说一下。

  苹果客户端:在手机“设置”的通知选项中,找到微信这个应用,然后激活“允许通知”选项就可以了。

  此外,还要检查一下微信客户端中的“新消息通知”,查个一下新消息通知是否在打开状态。由于苹果的所有信息通知都是Push推送的,所以微信的新消息通知一定要看下。

  安卓客户端:先在微信的设置选项中,找到“新消息提醒”,并打开消息通知。

  由于一些安卓手机有休眠机制,所以在微信设置了消息提醒后,还要检查一下相关的网络设置。有些手机在锁屏后会关闭一些应用推送,打开就可以了。

  一部分机型,需要在电池设置中,打开“休眠时始终保护网络连接”选项。不然,手机一旦锁屏后,网络连接就断开了,这样就无法收到微信通知。


  除了手机系统的设置外,如果运营商的网络速度太慢,也会影响微信消息的推送。出现这种情况,可以拨打运营商客服解决。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1.什么是推送通知 在某些特殊情况下,应用程序被动收到的以不同种界面形式出现的提醒信息 推送通知的作用:可以让不在前台运行的app通知app发生了改变 iOS中得推送通知种类 远程推送通知(Remote Notification) 本地推送通知(Local Notification) 2.推送通知的5种形式 3.推送通知的特点 App关闭时,可以接收通知并显示 App打开并处于后台时,通知会显示 App打开并处于前台时,通知不会显示 点击通知后,默认会自动打开发出通知的App 4.远程推送通知 在联网的情况下,由远程服务器推送给客户端的通知,又称APNs(Apple Push Notification Services) 不管应用是打开还是关闭的情况下,都能接收到服务器推送的远程通知 5.远程通知的实现基础 在联网状态下,所有苹果设备都会与苹果服务器建立长连接 长连接的作用:时间校准,系统升级,查找我的iPhone 长连接的好处:数据传输速度快,数据保持最新状态 6.远程推送的实现原理 安装App时 发送UDID和BundleID给APNs加密后返回deviceToken 登陆服务时,将用户身份和deviceToken发给服务器,服务器记录 李四给张三发消息 发送消息及张三的用户身份 服务器按照张三的身份找到存储的deviceToken,将消息和deviToken发送给APNs APNs通过deviceToken推送消息给张三 7.实现远程推送功能的前提 真机 调试阶段的证书 aps_development.cer 电脑可以调试有推送功能的app的证书 iOS_development.cer 电脑可以真机调试的证书 xxx.mobileprovision 描述文件,其中确定了哪台手机和电脑可以进行调试 发布阶段的证书 aps.cer 用该证书中说明的那台电脑发布的app具有远程推送功能时,用来使该app有推送功能的证书 iOS_distribution.cer 电脑有发布app的能力的证书 xxx.mobileprovision 描述文件,其中描述了哪台电脑可以发布app 8.实现远程推送功能的步骤 在启动方法中注册通知 注册成功后收到设备的deviceToken 实现用户点击通知后的响应(两种情况) 程序没有关闭,在后台实现AppDelegate中的didReceiveRemoteNotification方法 程序已经关闭,执行AppDelegation中的didFinishesLaunchingWithOption方法 9.远程推送的具体实现过程 去开发者平台,生成两个支持远程推送的证书 先点击App IDS添加一个准确的可以支持push功能的应用程序的BundleID 到生成的证书的那个节点下,先添加一个development阶段的支持push功能的cer文件 到最后一个provision节点下添加一个development阶段的支持push功能创建的那个App ID,cer文件要选择最新生成的支持push功能的cer文件,最后生成,下载,双击安装 为了确定cer文件和provision文件安装成功,可以到钥匙串和Xcode中的设备节点中分别查看(远程推送证书的申请流程请移步http://www.cnblogs.com/czq1989/p/5311302.html) 新建一个工程,先修改info.plist文件中Bundle ID为第二步创建的那个ID 为了兼容7.0所以修改配置中的deployment target为7.0 在AppDelegate中,发请求,询问是否要开通push功能,如果用户点击允许,则接收从服务器端发回的deviceToken(需要真机联网) 配置通过点击了通知打开应用程序后要做的事情,可以在AppDelegate中通过实现didReceiveRemoteNotification方法,就可以获取到用户点击了通知这个动作 10.远程推送过程中AppDelegate中所要响应的方法   下面的方法都是写在AppDelegate.m文件中 复制代码 /* 1.有一种打开,叫做点击图标后的打开 2.还有一种打开,叫做 点击了 通知 之后的打开 当通过 点击通知 这种方法打开应用程序,执行didFinishLaunching方法时,launchOptions 参数中,就存着通知发来的消息,也就是 类似于 didReceiveRemote方法中的那个userInfo */ - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { if ([UIDevice currentDevice].systemVersion.doubleValue <= 8.0) { //向服务器发请求,要注册推送功能,以此获取到服务器返回的deviceToken //type 用来说明 支持的通知形式 //如 横幅 声音 角标 [application registerForRemoteNotificationTypes:UIRemoteNotificationTypeBadge|UIRemoteNotificationTypeSound|UIRemoteNotificationTypeAlert]; }else{ UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge| UIUserNotificationTypeSound|UIUserNotificationTypeAlert categories:nil]; [application registerUserNotificationSettings:settings]; //申请使用通知 [application registerForRemoteNotifications]; } NSDictionary *userInfo = launchOptions[UIApplicationLaunchOptionsRemoteNotificationKey]; UILabel *label = [[UILabel alloc]init]; label.frame = CGRectMake(0, 40, 300, 200); label.numberOfLines = 0; label.textColor = [UIColor whiteColor]; label.font = [UIFont systemFontOfSize:24]; label.backgroundColor = [UIColor blueColor]; label.text =[NSString stringWithFormat:@"%@",userInfo]; [self.window.rootViewController.view addSubview:label]; return YES; } //只要获取到用户同意,则服务器端返回deviceToken //会自动执行下面的方法 //1417f54c c7f0adb0 48e3558f 2b8a8bad 0a6a5152 54af017e 32137cda 8cbdb9d0 - (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { NSLog(@"%@",deviceToken); } /* 用户点击了通知,进入到应用程序中,需要捕获到这个时机 从而决定这一次的进入应用程序,到底要显示或执行什么动作,下面的方法就会在点击通知时自动调用 */ /* 1.应用程序在前台时:通知到,该方法自动执行 2.应用程序在后台且没有退出时:通知到,只有点击了通知查看时,该方法自动执行 3.应用程序退出:通知到,点击查看通知,不会执行下面的didReceive方法,而是只执行didFinishLauncing方法 */ - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { //NSLog(@"%@",userInfo); //为了测试在应用程序退出后,该方法是否执行 //所以往第一个界面上添加一个label,看标签是否会显示一些内容 UILabel *label = [[UILabel alloc]init]; label.frame = CGRectMake(0, 250, 300, 200); label.numberOfLines = 0; label.textColor = [UIColor whiteColor]; label.font = [UIFont systemFontOfSize:24]; label.backgroundColor = [UIColor grayColor]; label.text =[NSString stringWithFormat:@"%@",userInfo]; [self.window.rootViewController.view addSubview:label]; } /* 此方法是新的用于响应远程推送通知的方法 1.如果应用程序在后台,则通知到,点击查看,该方法自动执行 2.如果应用程序在前台,则通知到,该方法自动执行 3.如果应用程序被关闭,则通知到,点击查看,先执行didFinish方法,再执行该方法 4.可以开启后台刷新数据的功能 step1:点击target-->Capabilities-->Background Modes-->Remote Notification勾上 step2:在给APNs服务器发送的要推送的信息中,添加一组字符串如: {"aps":{"content-available":"999","alert":"bbbbb.","badge":1}} 其中content-availabel就是为了配合后台刷新而添加的内容,999可以随意定义 */ - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler { UILabel *label = [[UILabel alloc]init]; label.frame = CGRectMake(0, 250, 300, 200); label.numberOfLines = 0; label.textColor = [UIColor whiteColor]; label.font = [UIFont systemFontOfSize:24]; label.backgroundColor = [UIColor grayColor]; label.text =[NSString stringWithFormat:@"%@",userInfo]; [self.window.rootViewController.view addSubview:label]; //NewData就是使用新的数据 更新界面,响应点击通知这个动作 completionHandler(UIBackgroundFetchResultNewData); } 复制代码 11.PushMeBaby 作用:测试APNs的开源Mac项目,充当服务器,可以将内容提交给苹果的APNs服务器,然后APNs服务器再推送内容给用户的设备 使用 注销报错的代码 修改ApplicationDelegate.m文件中self.deviceToken 添加推送证书到项目中,并改名为apns.cer 运行填写信息,点击Push按钮完成发送 注意:出现SSLwrite():-36 94错误 http://www.cnblogs.com/czq1989/p/5314940.html           无法拿到证书的路径:http://www.cnblogs.com/czq1989/p/5312146.html demo:https://github.com/TigerCui/RemoteNotificationDemo.git
Google Chrome的现场数据采集和条形码扫描 Scan-IT to Office是使用Google Chrome实时获取移动数据的有效解决方案。现场数据收集从未如此简单!该扩展程序在Scan-IT to Office应用程序的辅助下,提供了远程数据收集和条形码扫描到网站或Web应用程序的功能。云服务会立即将捕获的数据(条形码,图像,手动输入,日期和时间戳,GPS位置数据)转发到台式计算机上的Google Chrome中。无论您身在何处,即使在不同的办公室,设施或国家/地区,此功能都可以工作。多功能性:数据被捕获到智能手机或平板电脑上结构清晰的输入表格中 Scan-IT to Office应用程序提供的表单可以轻松地根据您的需求进行自定义。例如,使用具有多个条形码字段,图像或文本的输入表单仅需几秒钟。易于使用:Scan-IT to Office只需几个步骤即可使用:数据采集应用程序通过扫描QR码与Google Chrome扩展程序配对。现在,数据传输可以独立进行:捕获的条形码,图片,手动输入,时间戳或位置数据会自动发送到您计算机上的Google Chrome。功能:•针对网站和Web应用程序实时进行远程数据收集•适用于Google Chrome,Google Sheets,Microsoft Word和Microsoft Excel•捕获条形码,图像,日期,时间戳,文本,GPS位置数据和数字•自定义和预定义数据采购表格•智能云服务•在全球范围内工作,不受时间和地点限制•支持单用户和多用户方案•快速且用户友好的安装重要说明:要使用此免费扩展,您还需要Scan-IT to Office应用适用于您的移动设备(Android / iOS)。该应用程序以免费演示形式安装,为了不受限制地使用,我们恳请您购买该应用程序的订阅。没有订阅,记录的数据将不时被演示文本替换和/或显示通知。使用以下链接下载应用程序:•Android:https://goo.gl/vZNG7F•iOS:https://goo.gl/w3BWy8支持的条形码:•线性条形码:Codabar *,Code-128,Code 39,Code 93,2/5交错,... ...•2D代码:QR代码,数据矩阵,阿兹台克代码,PDF 417•GS1 DataBar(RSS-14)*•EAN和UPC条码(*仅适用于Android)兼容性:Scan-IT to Office可与台式机上的Google Chrome和Google表格一起使用。进一步受支持的目标应用程序是用于Microsoft Windows和Mac OS X / macOS的Microsoft Office 2013(或更高版本)和Microsoft Office 365(台式机和在线版本)。如果需要,请使用Microsoft AppSource安装他的加载项。支持:如有疑问,请通过[email protected](电子邮件),TECITSupport(Skype)与我们联系或访问https://www.tec-it.com/sto。使用和隐私条款:https://www.tec-it.com/download/PDF/TEC-IT_AGB_EN.pdf 支持语言:English
我想要一款智能手表,它向我展示了来自iPhone的通知,尺寸足够小,并且有可充电电池持续至少一天。我基于Arduino创建了自己的Apple手表。它是基于Arduino mini pro的智能手表,通过蓝牙连接到iPhone。USB微型端口连接到电池,使充电变得简单和简单。正面的导线是触摸按钮,可以感应您是否将手指放在它们上面,这可以让您与手表进行交互。 收到通知时,手表将自动将时间与iPhone上的时间同步。这使得手表对Arduino的延迟更加可靠和不敏感。10秒后,为了节省电池,屏幕将被关闭。如果中间按钮被触摸或收到新的通知,屏幕会醒来。 我遇到了卢克Brendt的页面,并看到他创造了我想要实现的同样的事情,但我需要的设备更小,耐磨。这是我在这个项目中使用的Brendt的ANCS Arduino库。ANCS代表苹果公司通知中心服务,其描述如下。“Apple通知中心服务(ANCS)的目的是通过简单方便的方式为蓝牙配件(通过蓝牙低功耗连接与iOS设备连接)访问iOS设备上生成的多种通知。” 硬件组件: SparkFun Arduino Pro Mini 328 - 3.3V / 8MHz× 1 Adafruit Bluefruit LE - 低功耗蓝牙(BLE 4.0) - nRF8001 Breakout - v1.0× 1 Adafruit单色0.96英寸128x64 OLED显示屏× 1 Adafruit锂离子聚合物电池 - 3.7v 100mAh× 1 Micro-USB连接器× 1 1M欧姆1206 SMD电阻器× 3 20毫米表带与Sprint× 1 USB-A到Micro-USB电缆× 1 2x5mm螺丝× 4 SparkFun LiPo充电器基本 - Micro-USB× 1 SparkFun FTDI基本突破 - 3.3V× 1 50x50mm铝板× 1 矩阵或条形板× 1 软件应用程序和在线服务: Ide web Arduino IDE 手工工具和制造机器: 烙铁(通用) 3D打印机(通用) 其他常见工具如锯,钳子,螺丝刀和刀 附件有让您自行构建智能手表的教程,感兴趣的可以免费下载查看。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值