1

我希望更改的是在 iOS 蓝牙设置和我的应用程序中显示的外围设备名称,以便用户可以识别设备。

我要做的是:

  1. 用户在 UITextField 中写了一个名字,我得到了 NSString。
  2. 我将 NSString 转换为 NSData。
  3. 使用新的外设名称写入特征。
  4. 外设更改 GATT 设备名称。

如果我使用 UTF8 编码来获取 NSData,一切正常,但在波浪线、书面重音和西里尔字母方面存在问题,因为应用程序支持多种语言。不确定问题出在 iOS 设备还是外围设备上。

我的问题:

  1. 我应该使用什么编码?
  2. 是否可以使用此字符作为名称?
  3. 调用 peripheral.name 时返回的字符串使用什么编码?
  4. 是否有另一种解决方案来更改显示的外围设备名称?
4

1 回答 1

0

名称以符合规范的 UTF-8 编码。UTF-8 是一种多字节编码,因此将字节值解释为单独的字符可能会导致意外结果。

于 2014-02-28T12:46:53.693 回答