浅谈iOS中的蓝牙技术(二) -- CoreBluetooth

2024/3/28 20:35:08

在上篇文章中我们提到了 iOS 开发中,使用GameKit 框架实现相同网络的 iOS 设备之间传输数据.但是 GameKit 框架在 iOS7 之后就过时了,那么本文将介绍另一种关于蓝牙的框架 CoreBluetooth.

CoreBluetooth

简介
  • CoreBlueTooth.framework
    使用 CoreBluetooth 要求设备必须要支持蓝牙4.0(一般也叫BLE<Bluetooth low energy>)。,并且手机型号必须是iPhone4以上,也就是至少4s手机.使用CoreBluetooth进行开发可实现与第三方设备的数据交互.

1240

CoreBluetooth.h

上图是CoreBluetooth 的头文件,在这个框架中最核心的两个东西就是 Central (中心)和 Peripheral(外设).

1240

图片来自网络,如有侵权,请联系

CoreBluetooth 中的对象模型
  • CBCentralManager
    它用于管理发现或远程连接外围设备(CBPeripheral对象),包括扫描,发现和外围设备连接到广告.

  • CBPeripheralManager
    它用于管理服务在当地发表外围设备的通用属性配置文件数据库和通知这些服务的中心设备(CBCentral对象).

  • CBPeripheral
    它代表远程周边设备,你的应用程序的中央管理器(CBCentralManager)的一个实例——发现广告或当前连接.

  • CBCentral
    它代表远程中央设备连接到一个应用程序在本地设备上实现外围的作用.

  • CBService 和 CBMutableService
    代表外围的业务数据收集,相关行为完成一个功能或特性的设备(或部分设备).CBMutableService类继承CBService类添加写访问的所有属性.

  • CBCharacteristic及其子类CBMutableCharacteristic
    代表进一步外围的信息服务.CBMutableCharacteristic对象代表当的特色周边的服务

  • CBUUID
    它的实例代表128位全局唯一标识符(uuid)属性中使用蓝牙低能量沟通,比如周边的服务,特点,和特征描述符

  • CBATTRequest
    它代表属性协议(ATT)读写请求从远程中央设备(CBCentral对象)

实现通讯

中心管理设计模式

  • First

导入 CoreBluetooth 头文件,创建中心管理者属性和外设属性,并遵守中心管理者和外设的协议.

1240

First

  • 建立中心控制器
    懒加载创建中心控制器, 创建的时候设置代理为当前控制器,Peripheral Manager将跑在主线程中。如果你想用不同的线程做更加复杂的事情,你需创建一个队列(queue)并将它放在这儿

- (CBCentralManager *)getCManager{    if (!_cManager) {
        _cManager = [[CBCentralManager alloc] initWithDelegate:self queue:dispatch_get_main_queue() options:nil];
    }    return _cManager;
}
  • 更新状态 (只要中心管理者初始化,就会触发此代理方法)
    中心管理器的状态

    1240

    中心管理器

  • 扫描外设

    // 该方法用于告诉Central Manager,要开始寻找一个指定的服务了.不能在state非ON的情况下对我们的中心管理者进行操作,scanForPeripheralsWithServices方法中 sercices为空则会扫描所有的设备.- (void)centralManagerDidUpdateState:(CBCentralManager *)central{  switch (central.state) {      case CBCentralManagerStateUnknown:          NSLog(@"中心管理器状态未知");          break;      case CBCentralManagerStateResetting:          NSLog(@"中心管理器状态重置");          break;      case CBCentralManagerStateUnsupported:          NSLog(@"中心管理器状态不被支持");          break;      case CBCentralManagerStateUnauthorized:          NSLog(@"中心管理器状态未被授权");          break;      case CBCentralManagerStatePoweredOff:          NSLog(@"中心管理器状态电源关闭");          break;      case CBCentralManagerStatePoweredOn:
          {          NSLog(@"中心管理器状态电源开启");          // 在中心管理者成功开启后开始搜索外设          [self.cManager scanForPeripheralsWithServices:nil options:nil]; 
              // 搜索成功之后,会调用我们找到外设的代理方法 sercices为空则会扫描所有的设备
              // - (void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral *)peripheral advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI; //找到外设      }          break;      default:          break;
      }
    }
  • 过滤外设,进行连接
    如果找到了设备,则代理会调用该方法,过滤外设

/*
 *  @param central              中央管理器提供此更新
 *  @param peripheral           一个外设对象
 *  @param advertisementData    一个包含任何广播和扫描响应数据的字典。
 *  @param RSSI                 RSSI(Received Signal Strength Indicator)是接收信号的强度指示
 *
 */- (void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral *)peripheral advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI{    if ([peripheral.name hasPrefix:@"XXX"] && (ABS(RSSI.integerValue) > 35)) {        // 标记我们的外设,延长他的生命周期
        self.peripheral = peripheral;        // 进行连接
        [self.cManager connectPeripheral:self.peripheral options:nil];
    }}
  • 连接状态(成功,失败,断开)
    中心管理者连接外设成功,连接成功之后,可以进行服务和特征的发现

- (void)centralManager:(CBCentralManager *)central didConnectPeripheral:(CBPeripheral *)peripheral{    NSLog(@"%@连接成功",peripheral.name);    // 获取外设的服务
    // 设置外设的代理
    self.peripheral.delegate = self;    // 外设发现服务,传nil代表不过滤
    // 这里会触发外设的代理方法 - (void)peripheral:(CBPeripheral *)peripheral didDiscoverServices:(NSError *)error
    [self.peripheral discoverServices:nil];
}// 外设连接失败- (void)centralManager:(CBCentralManager *)central didFailToConnectPeripheral:(CBPeripheral *)peripheral error:(NSError *)error
{    NSLog(@"%@连接失败",peripheral.name);
}// 丢失连接- (void)centralManager:(CBCentralManager *)central didDisconnectPeripheral:(CBPeripheral *)peripheral error:(NSError *)error
{    NSLog(@"%@断开连接",peripheral.name);
}
  • 发现服务以及内部的特征

// 发现外设的服务后调用的方法- (void)peripheral:(CBPeripheral *)peripheral didDiscoverServices:(NSError *)error
{    // 判断没有失败
    if (error) {        NSLog(@"error:%@",error.localizedDescription);        return;
    }    for (CBService *service in peripheral.services) {
        [peripheral discoverCharacteristics:nil forService:service];
    }
}// 发现服务后,让设备再发现服务内部的特征- (void)peripheral:(CBPeripheral *)peripheral didDiscoverCharacteristicsForService:(CBService *)service error:(NSError *)error
{    // 遍历特征
    for (CBCharacteristic *characteristic in service.characteristics) {        // 获取特征对应的描述
        [peripheral discoverDescriptorsForCharacteristic:characteristic];        // 获取特征的值
        [peripheral readValueForCharacteristic:characteristic];
    }
}
  • 更新特征

// 更新特征的描述的值的时候会调用- (void)peripheral:(CBPeripheral *)peripheral didUpdateValueForDescriptor:(CBDescriptor *)descriptor error:(NSError *)error
{
    [peripheral readValueForDescriptor:descriptor];
}// 更新特征的value的时候会调用- (void)peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error
{    for (CBDescriptor *descriptor in characteristic.descriptors) {
        [peripheral readValueForDescriptor:descriptor];
    }
}
  • 外设写数据到特征中
    NS_OPTIONS类型的枚举特征属性,可以是多个值,这里需要注意,由于枚举属性是NS_OPTIONS,所以一个枚举可能对应多个类型,所以在判断的时候不能用 = ,而应该用包含&

1240

NS_OPTIONS类型的特征属性

- (void)peripheral:(CBPeripheral *)peripheral didWriteData:(NSData *)data forCharacteristic:(nonnull CBCharacteristic *)characteristic
{    // 
    if (characteristic.properties & CBCharacteristicPropertyWrite) {    // 下面方法中参数的意义依次是:写入的数据 写给哪个特征 通过此响应记录是否成功写入
        [peripheral writeValue:data forCharacteristic:characteristic type:CBCharacteristicWriteWithResponse];
    }
}
  • 通知的订阅和取消订阅
    一般来说这两个方法要根据产品需求来确定写在什么地方

- (void)peripheral:(CBPeripheral *)peripheral regNotifyWithCharacteristic:(nonnull CBCharacteristic *)characteristic
{    // 外设为特征订阅通知
    [peripheral setNotifyValue:YES forCharacteristic:characteristic];
}
- (void)peripheral:(CBPeripheral *)peripheral CancleRegNotifyWithCharacteristic:(nonnull CBCharacteristic *)characteristic
{    // 外设取消订阅通知
    [peripheral setNotifyValue:NO forCharacteristic:characteristic];
}
  • 断开连接

- (void)dismissConentedWithPeripheral:(CBPeripheral *)peripheral
{    // 停止扫描
    [self.cManager stopScan];    // 断开连接
    [self.cManager cancelPeripheralConnection:peripheral];
}

END

外设管理设计模式,跟中心管理设计模式类似,就不赘述,需要遵守 外设管理器协议 和中心协议,设置代理,遵守其中的方法.代码地址:https://github.com/coderqiao/CoreBluetooth.



文/CoderQiao(简书作者)
原文链接:http://www.jianshu.com/p/bad5a30e38d4
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。


查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. Jenkins Android gradle只能打包app-release-unsigned.apk

    最近在通过jenkins自动打包安卓apk,但是测试打包的时候发现只能生成app-release-unsigned.apk,这个发到安卓手机因为缺少证书不能安装。解决办法是1.在app/build.gradle文件中增加signingConfigs字段 apply plugin: com.android.applicationandroid {compileSdkVersion 21bui…...

    2024/3/7 13:51:40
  2. DevC++出现兼容问题 跪求大佬解决!!!

    我的dev出现这样的问题,希望大佬们能够解救下孩子,大一啥都不会,我也尝试查了查,有一个是改变环境变量的,失败了。...

    2024/3/7 13:51:38
  3. KTV点歌系统数据库设计文档

    KTV点歌系统数据库设计文档前台e-r图后台 E-R3.数据库字典SwanInfo(歌星表)中文名英文名数据类型大小约束备注歌星编号SwanIDvarchar20主键,歌星序列号歌星姓名SwanNamevarchar50 必填歌星性别SwanSexchar2男/女必填歌星类型SwanTypeint 个人为0,组合为1歌星国籍SwanCountyv…...

    2024/3/7 13:51:37
  4. [Devcpp]为Devc自定义编译器及Devcpp路径读取的Bug

    0. 前言Devcpp自带的GCC虽说是14年发布的4.9.2版的,但怎么说也还是太旧了,C++17完全不能支持。所以还是打算自行下载新版本的GCC,配置到Devcpp里来编译。 1. 环境我下载的GCC放在C:\Program Files\mingw-w64\x86_64-7.2.0-posix-seh-rt_v5-rev1\mingw64里。Devcpp自带的GCC放…...

    2024/3/7 13:51:36
  5. 用 Unity 进行网络游戏开发(一)

    用 Unity 进行网络游戏开发(一)这是我之前写的了,一直保存在电脑里,现在学习写博客。希望多和大家交流,共同进步,文章中说得不好的地方请指出,谢谢!使用Unity3D进行网络游戏开发一.Unity3d 简介 Unity3d是时下比较流行的一款游戏引擎,流行是因为用它做游戏很方便,…...

    2024/3/7 13:51:35
  6. DevC++一调试就停止运行?

    刚开始接触Dev-C++写程序,写程序免不了要调试谁知一调试就卡死,然后直接闪退一开始还以为是系统(使用的是win10 64位)的问题后来在网上一找,才发现是设置错误,只需要把这个默认设置改过来就可以了顺便吐槽一下这个脑残的默认设置好了,下面是问题的正解:工具-》编译选项…...

    2024/3/7 13:51:34
  7. 关于升级到Android Studio3.2版本的注意事项

    关于升级到Android Studio3.2版本的注意事项: 1、默认最低的Build Tools version 为 28.0.22、如果程序中使用了kotlin插件,需要将kotlin插件的最低版本号改为1.2.513、如果在gradle.properties文件中加入了android.overridePathCheck=true 设置,现在是不支持的要删除或注释…...

    2024/3/7 13:51:33
  8. iOS自定义键盘

    对于有输入功能的控件,例如UITextField,可以给控件的inputView属性赋值,实现自定义键盘的功能UIView *view = [[UIView alloc]initWithFrame:CGRectMake(0, 0, [UIScreen mainScreen].bounds.size.width, 300)];UIButton *button = [[UIButton alloc]initWithFrame:CGRectMa…...

    2024/3/7 13:51:32
  9. 对数据库设计的三大范式的理解

    三大范式,停留在理论毫无作用,主要还是看在实际项目中如何灵活应用,说白了,范式是一种约束,要求我们设计数据库表时不能随心所欲,总得来说就两个原则:减少冗余和节省空间。但是,随着大数据时代的到来,不得不说,数据库设计也不能完全遵照范式,毕竟其效率还待商榷,尤…...

    2024/3/16 4:30:04
  10. 语法格式:PATINDEX ( '%pattern%' , expression ) (转)

    语法格式:PATINDEX ( %pattern% , expression ) 返回pattern字符串在表达式expression里第一次出现的位置,起始值从1开始算。 pattern字符串在expression表达式里没找就返回0,对所有有效的文本和字符串就是有效的数据类型。 描述一下此函数的具体用法: 1. PATINDEX ( %patt…...

    2024/3/7 13:51:30
  11. DevC++配置GDI库的问题

    很多人喜欢用DevC++,而在这其中,又有很多人懒得开工程,短代码直接开源码写,可是比方说有一些画图的问题需要GDI库,而GDI库在网上的教程中,一般都是必须在工程中配置的,而且大多不是DevC++,在此分享一下如何解决,也权当笔记(下次系统再坏了,再次重装DevC++时也好有个…...

    2024/3/7 13:51:30
  12. 头条Android 屏幕适配

    android中的dp在渲染前会将dp转为px,计算公式:px = density * dp; density = dpi / 160; px = dp * (dpi / 160); dpi = √widthpix widthpix + heightpix heightpix / 尺寸大小android中所有的dp和px的转换都是通过 DisplayMetrics 中相关的值来计算的 假设设计图宽度是360…...

    2024/3/7 13:51:28
  13. 数据库的设计总结

    首先对数据库的整体结构进行图形化的设计,然后在依据图形对数据库结构进行建立。简单来说,数据库设计就是根据业务系统的具体需要,结合我们所选用的DBMS(数据库管理系统),为这个业务系统构造出最优的数据存储模型,并建立好数据库中的表结构及表与表之间的关联关系的过程…...

    2024/3/7 13:51:28
  14. 修改设备密码及灌溉IOS

    路由器加电/启动顺序:修改密码注释:根据设备修改寄存值router#show version.....................Configuration register is 0x2102第一步、重启路由器按ctrl + break +fn键 进入监控模式 第二步、修改寄存器值【rommon>模式下修改】remmon>confreg 0x2142 路由器是10…...

    2024/3/7 13:51:27
  15. (精)DEVC++的几个实用小技巧

    依赖DEV C++ 5.11 最新版 下载安装DEV C++后,使用DEV C++打开一个随便的cpp文件,你看到的应该是这样的界面。(为了节约读者的流量,图片进行了有损压缩,但是字看得清楚) 重点是确认工具栏有AStyle选项。相信编译运行什么的同学们肯定都会了,我就不说了。主题好了那么可以…...

    2024/3/20 7:39:35
  16. qml自学笔记------自己写类似于劲舞团的按键小游戏(中)

    接上篇《qml自学笔记------自己写类似于劲舞团的按键小游戏(上)》 第三部分DisplayPart.qml 代码的其他部分都是渣,就这里花了点时间,整个小游戏就靠这个文件。 首先,屏幕上要随机的滑过空格或者箭头,每一个图片就是一个项目,那么就要动态的创建项目。动态创建项目方法有…...

    2024/3/4 10:17:27
  17. Filter容器--PopsTabView

    #PopsTabView PopsTabView是个filter容器,他可以自动,快速,构建不同筛选样式,自由组合成一组tab. 目前版本v1.1筛选样式 筛选种类单列 单选,多选三行 单选,多选双列 单选,多选复杂 单项单选,单项多选后续筛选会不断完善补充. 项目地址传送门 https://github.com/ccj659/PopsTab…...

    2024/3/4 10:17:26
  18. 关于SQL中查找字符串的总结 PATINDEX CHARINDEX 返回字符串中第N次出现指定字符串位置...

    假如你寫過很多程序,你可能偶爾會碰到要確定字符或字符竄串否包含在一段文字中,在這篇文章中,我將討論使用CHARINDEX和PATINDEX函數來搜索文字列和字符串。我將告訴你這兩個函數是如何運轉的,解釋他們的區別。同時提供一些例子,通過這些例子,你可以可以考慮使用這兩個函數…...

    2024/3/4 10:17:24
  19. DevC++下面的编译信息窗口不能打开

    我在使用Dev的时候,会出现下图所示情况:即变异窗口会紧紧贴在IDE底部,然后当你写完程序,敲击F11进行编译的时候,它又会直接消失,导致如果出bug了你根本不知道出现了什么错误。之前我是重新打开DEV找到分界线慢慢使用鼠标往上提,这很麻烦。 后来发现是这样的: 1、点击视图…...

    2024/3/15 6:37:50
  20. 房间类游戏中的房间ID管理

    一、房间类游戏的房间基本属性房间类游戏在我们的生活中并不陌生,像跑跑卡丁车、劲舞团、欢乐麻将等,都是房间匹配的。1、UUID 全局唯一2、房间ID 当前唯一,且供客户端显示3、房间类型4、房间名字(可选)5、创建时间6、密码 可选7、加入条件 如需要扣除多少金币,房卡等8、…...

    2024/3/7 13:51:24

最新文章

  1. nginx截取url后面的id比较大小

    ##这里下面的代码是截取url后面的文章id&#xff0c;然后比较小于200000的话&#xff0c;跳转到指定的页面 ##注意 http://xxx.com/index.html 需要换成自己的页面 #set $article_id ""; #set $history_flag 1; #set $min_article_id 10; # …...

    2024/3/28 20:34:41
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. AI推介-大语言模型LLMs论文速览(arXiv方向):2024.03.15-2024.03.20

    文章目录~ 1.Dated Data: Tracing Knowledge Cutoffs in Large Language Models2.Automatic Information Extraction From Employment Tribunal Judgements Using Large Language Models3.mPLUG-DocOwl 1.5: Unified Structure Learning for OCR-free Document Understanding4.…...

    2024/3/28 8:58:07
  4. Python flask abort 主动抛出异常

    from flask import Flask, abortapp Flask(__name__)# 重定向到百度 app.route(/index) def index():abort(404)return "123"if __name__ __main__:app.run(debugTrue)如果改成abort(403)...

    2024/3/28 5:17:13
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/3/27 10:21:24
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/3/24 20:11:25
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/3/18 12:12:47
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/3/24 20:11:23
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/3/26 20:58:42
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/3/28 17:01:12
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/3/24 5:55:47
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/3/27 10:28:22
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/3/26 23:04:51
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/3/26 11:20:25
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/3/24 20:11:18
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/3/28 9:10:53
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/3/24 20:11:16
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/3/24 20:11:15
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/3/27 7:12:50
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/3/24 20:11:13
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/3/26 11:21:23
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/3/28 18:26:34
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/3/28 12:42:28
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/3/28 20:09:10
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57