【iOS】iphone 短信标记未读 bug/ 永远清不干净的红点未读提示 /总结四大解决方案,总有N个适合你

iPhone短信未读清不掉?  iPhone信息全部已读为啥还显示?  短信已标记全部已读,仍然有红点提示? iphone短信数量不对? 这个BUG太坑了,今天必须把它干掉,否则老是错过重要信息,截至目前,由于此问题已经让我损失了4000左右港币,肉疼。。。(不过万幸最后申诉回来了,这里得赞一下谷歌云)

以下方案均基于你已经尝试过全部已读仍然不能消除红点提示 

 方案1-多次已读

信息太多了系统看似全部已读实际上没读完。

再打开信息界面,把你的信息快速下滑一直到最后,再操作一次“全部已读”。如果信息多可以中间停顿几次,每次停顿都再操作一次“全部已读”。红点数字就没了。

我就是信息选了全部已读还显示一千多条未读,这么操作就没了。

方案2-siri大法

最近发现信息有小红点+数字,可是打开信息,在列表里全部浏览了一下,没有找到蓝点。

然后问siri,有未读消息吗?

siri说有N条未读消息,然后就开始读了。我按照siri说的内容搜索了一下,确实找到了那一条消息。但是那一条消息在列表里面并没有蓝点,因此单纯看根本看不出来这个消息是未读的。

看起来是信息app出bug了,没有给未读消息加蓝点。

让siri全部读一遍,小红点+数字就没有了。

方案3-搜索关键字

ios只显示当年的全部信息,从上一年起只显示保存过的联系人的。如果去年有短信没有及时已读,就会被隐藏起来,全选的时候读不到。

解决方法:在搜索框搜索“。,!”等常用符号和“0-9”常用数字,点击“对话”旁边的“显示全部”,把所有短信都刷出来。然后再点全部已读,就可以消去小红点了。

如果还剩几条,就凭运气再试几个字符,看能不能碰上。

方案4-以退为进

还有个方法,直接在所有信息里全选,然后标记未读,这时红点数就会上升,这时再重新标记一边已读即可

参考

为什么iphone信息全部已读还有个红点? - 知乎这个有什么办法把红点整没了https://www.zhihu.com/question/447293247

最后 

若是你不止有红点提示的问题,还有短信不提醒的问题,可能是你开启了“某某专注模式”,比如什么“工作专注模式”,“睡眠专注模式"等等,删除该专注模式即可

在Unity中,可以使用Keychain来存储和获取设备的唯一标识符。以下是一些示例代码,可以帮助你在iOS上获取一个永远变的标记: ```csharp using System.Runtime.InteropServices; using UnityEngine; public static class DeviceInfo { #if UNITY_IOS [DllImport("__Internal")] private static extern string _GetDeviceID(); #endif public static string GetDeviceID() { string deviceID = ""; #if UNITY_IOS deviceID = _GetDeviceID(); #endif if (string.IsNullOrEmpty(deviceID)) { Debug.LogError("Failed to get device ID"); } return deviceID; } } ``` 然后,在Objective-C中实现_GetDeviceID()方法: ```objective-c #import <Foundation/Foundation.h> #import <Security/Security.h> #include <sys/sysctl.h> NSString* GetDeviceID() { NSString *serviceName = [[NSBundle mainBundle] bundleIdentifier]; NSString *accountName = @"DeviceID"; NSDictionary *query = @{ (__bridge id)kSecClass: (__bridge id)kSecClassGenericPassword, (__bridge id)kSecAttrService: serviceName, (__bridge id)kSecAttrAccount: accountName, (__bridge id)kSecReturnData: @YES }; CFTypeRef dataTypeRef = NULL; OSStatus status = SecItemCopyMatching((__bridge CFDictionaryRef)query, &dataTypeRef); if (status == noErr && dataTypeRef != NULL) { NSData *data = (__bridge NSData *)dataTypeRef; NSString *deviceID = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; return deviceID; } NSString *deviceID = [GetUUID() lowercaseString]; NSData *data = [deviceID dataUsingEncoding:NSUTF8StringEncoding]; query = @{ (__bridge id)kSecClass: (__bridge id)kSecClassGenericPassword, (__bridge id)kSecAttrService: serviceName, (__bridge id)kSecAttrAccount: accountName, (__bridge id)kSecValueData: data }; status = SecItemAdd((__bridge CFDictionaryRef)query, NULL); if (status != noErr) { NSLog(@"Failed to save device ID"); } return deviceID; } NSString* GetUUID() { CFUUIDRef uuidRef = CFUUIDCreate(kCFAllocatorDefault); CFStringRef uuidStringRef = CFUUIDCreateString(kCFAllocatorDefault, uuidRef); NSString *uuid = (__bridge NSString *)uuidStringRef; CFRelease(uuidRef); CFRelease(uuidStringRef); return uuid; } ``` 这个方法将使用Keychain来存储设备的唯一标识符。如果设备上没有存储标识符,则会生成一个新的唯一标识符并将其存储在Keychain中。如果设备上已经存在标识符,则直接从Keychain中获取它。这样,即使用户删除并重新安装应用程序,设备的唯一标识符也将保持变。 请注意,此方法需要在Unity中使用iOS插件来实现。将上述Objective-C代码放入一个名为"DeviceID.m"的文件中,并将其添加到Unity项目的Plugins/iOS目录中即可。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jitcor

觉得有用,不赏点?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值