苹果系统下无痕检测是否开启iMessage服务,iMessages数据筛选,iMessage蓝号检测实现原理
一、实现iMessage数据检测的两种方式:
1.人工筛选,将要验证的号码输出到文件中,以逗号分隔。再将文件中的号码粘贴到iMessage客户端的地址栏,iMessage客户端会自动逐个检验该号码是否为iMessage账号,检验速度视网速而定。红色表示不是iMessage账号,蓝色表示iMessage账号。
2.编写程序控制Mac os/iphone上自带的iMessage应用进行验证(自动无痕迹检测,无需人工干预),将数据自动填充到号码框之后,如果捕获到失败则不是iMessage账号,捕获到成功则把数据保存下来。
二、iMessage蓝号检测协议分析
/* 注意:检测不同国家手机号需要在手机号的前缀 +国家代码即可,自动检测导入的txt数据,蓝号数据自动保存,最新升级版参考文章: https://www.cnblogs.com */
无痕检测是否imessge蓝号协议代码如下:
-- 全自动无痕检测手机号或邮箱数据是否开启iMessage服务 startApp() -- 执行iMessage蓝号检测主程序 on startApp() tell application "Finder" to activate tell application "Finder" set chosenfile to (choose file) end tell tell application "Messages" tell application "Messages" to activate set phoneData to read chosenfile set cards to paragraphs of phoneData repeat with phone in cards --set msgText to (my AppendFace(" ")) -- 假如字符串大于0,则草率判定是手机号 set num to the length of phone if (num > 0) then --执行检测 my sendMsg(phone) delay 1 end if end repeat display dialog "恭喜,数据已全部检测完毕!" end tell end startApp # 开始检测 on sendMsg(phone) tell application "Messages" to activate tell application "System Events" tell process "Messages" tell window 1 --核心代码,省略......... if static text of sheet 1 of window "信息" of application process "Messages" of application "System Events" exists then --对未启用imessage的手机号码进行记录 my WritePhone(phone, "未开启im的数据.txt") else --对已启用imessage的手机号码进行记录 my WritePhone(phone, "已开启im的数据.txt") end if delay 0.2 key code 76 end tell end tell end tell end sendMsg -- 记录有效手机号 on WritePhone(the_phone, file_name) set num to the length of the_phone if (num > 0) then set fileName to date string of (current date) set logFilePath to my current_folder_path() & "send/" & file_name set this_file to (POSIX file logFilePath as string) set this_story to the_phone & " " try set fp to open for access this_file set myText to read fp if (myText does not contain the_phone) then my write_to_file(this_story, this_file, true, true) end if on error my write_to_file(this_story, this_file, true, true) end try end if end WritePhone -- 写入文件 on write_to_file(this_data, target_file, append_data, append_end) try set the target_file to the target_file as text set the open_target_file to ¬ open for access file target_file with write permission if append_data is false then set eof of the open_target_file to 0 write this_data to the open_target_file starting at eof else if append_end is false then try set fp to open for access target_file set myText to read fp set eof of the open_target_file to 0 write this_data to the open_target_file starting at eof write myText to the open_target_file starting at eof on error write this_data to the open_target_file starting at eof end try else write this_data to the open_target_file starting at eof end if close access the open_target_file return target_file on error try close access file target_file end try return false end try end write_to_file -- 获取当前文件的父文件夹路径 on current_folder_path() set UnixPath to POSIX path of ((path to me as text) & "::") return UnixPath end current_folder_path
源码编译后再Windows系统运行效果图(通过协议通道全自动无痕检测,检测结果自动保存.)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」