Commit 78069d6aa915683f6a047b7a8eff98e4c44bee40

Authored by jason
1 parent 671a3d9e

feat:lettransceiver annotation

HDFwear/OTA/LETransceiver.h
... ... @@ -16,16 +16,16 @@ NS_ASSUME_NONNULL_BEGIN
16 16 #define KeyWriteCharacteristicUUID @"kWriteCharacteristicUUID"
17 17 #define KeyIndicateCharacteristicUUID @"kIndicateCharacteristicUUID"
18 18  
19   -//@protocol LEConnctionDelegate <NSObject>
  19 +@protocol LEConnctionDelegate <NSObject>
20 20 //
21 21 //@required
22 22 //- (void)onFoundPeripheral:(CBPeripheral *) peripheral advertisementData:(NSDictionary *) advertisementData;
23 23 //
24 24 //@optional
25   -//- (void)onConnectedPeripheral:(CBPeripheral *) peripheral;
  25 +- (void)onConnectedPeripheral:(CBPeripheral *) peripheral;
26 26 //- (void)onDisconnectedPeripheral:(CBPeripheral *) peripheral;
27 27 //
28   -//@end
  28 +@end
29 29  
30 30 @protocol LEDataDelegate <NSObject>
31 31  
... ... @@ -35,9 +35,9 @@ NS_ASSUME_NONNULL_BEGIN
35 35  
36 36 @end
37 37  
38   -@interface LETransceiver : NSObject<CBPeripheralDelegate, CBCentralManagerDelegate>
  38 +@interface LETransceiver : NSObject
39 39  
40   -//@property (weak, nonatomic) id<LEConnctionDelegate> connectionDelegate;
  40 +@property (weak, nonatomic) id<LEConnctionDelegate> connectionDelegate;
41 41 @property (weak, nonatomic) id<LEDataDelegate> dataDelegate;
42 42  
43 43 //- (void)setUUIDs:(NSDictionary *) uuids;
... ... @@ -53,8 +53,8 @@ NS_ASSUME_NONNULL_BEGIN
53 53  
54 54 // for BluetoothManager to call
55 55 @property (weak, nonatomic) CBCentralManager *centralManager;
56   -- (void)peripheral:(CBPeripheral *)peripheral didDiscoverCharacteristicsForService:(CBService *)service error:(NSError *)error;
57   -
  56 +- (void)peripheral:(CBPeripheral *)peripheral didDiscoverCharacteristicsForService:(CBService *)service error:(nullable NSError *)error;
  57 +- (void)closeOTA;
58 58 @end
59 59  
60 60 NS_ASSUME_NONNULL_END
... ...
HDFwear/OTA/LETransceiver.m
... ... @@ -13,11 +13,6 @@
13 13 #define BLE_UUID_SERVICE_WRITE @"e49a25e0-f69a-11e8-8eb2-f2801f1b9fd1"
14 14 #define BLE_UUID_SERVICE_READ @"e49a28e1-f69a-11e8-8eb2-f2801f1b9fd1"
15 15  
16   -#define KeyWriteServiceUUID @"kWriteServiceUUID"
17   -#define KeyIndicateServiceUUID @"kIndicateServiceUUID"
18   -#define KeyWriteCharacteristicUUID @"kWriteCharacteristicUUID"
19   -#define KeyIndicateCharacteristicUUID @"kIndicateCharacteristicUUID"
20   -
21 16 @implementation LETransceiver {
22 17 NSString *writeServiceUUID;
23 18 NSString *writeCharacteristicUUID;
... ... @@ -36,6 +31,10 @@
36 31  
37 32 }
38 33  
  34 +- (void)closeOTA {
  35 + [connectedPeripheral setNotifyValue:NO forCharacteristic:characteristicIndicate];
  36 +}
  37 +
39 38 - (id) init {
40 39 self = [super init];
41 40 if (self) {
... ... @@ -72,17 +71,17 @@
72 71 // if (indicateServiceUUID)
73 72 // [servicesUUID addObject:indicateServiceUUID];
74 73 // */
75   -// [centralManager scanForPeripheralsWithServices:nil options:options];
  74 +// [self.centralManager scanForPeripheralsWithServices:nil options:options];
76 75 //}
77 76  
78 77 //- (void)scanStop {
79   -// [centralManager stopScan];
  78 +// [self.centralManager stopScan];
80 79 //}
81 80  
82 81 //- (void)connect:(CBPeripheral *)peripheral {
83 82 // [self scanStop];
84 83 //
85   -// [centralManager connectPeripheral:peripheral options:@{CBConnectPeripheralOptionNotifyOnConnectionKey:@YES}];
  84 +// [self.centralManager connectPeripheral:peripheral options:@{CBConnectPeripheralOptionNotifyOnConnectionKey:@YES}];
86 85 //
87 86 // if (connectTimer) {
88 87 // [connectTimer invalidate];
... ... @@ -96,20 +95,12 @@
96 95 // }
97 96 //
98 97 // NSLog(@"disconnect %@", peripheral.name);
99   -// [centralManager cancelPeripheralConnection:peripheral];
  98 +// [self.centralManager cancelPeripheralConnection:peripheral];
100 99 //}
101 100  
102 101 //- (BOOL) isPeripheralConnected:(CBPeripheral *) peripheral {
103   -// if (IOS_VERSION >= 7.0) {
104   -// if (peripheral.state == CBPeripheralStateConnected) {
105   -// return YES;
106   -// }
107   -// } else {
108   -//#ifndef __IPHONE_7_0
109   -// if (peripheral.isConnected) {
110   -// return YES;
111   -// }
112   -//#endif
  102 +// if (peripheral.state == CBPeripheralStateConnected) {
  103 +// return YES;
113 104 // }
114 105 // return NO;
115 106 //}
... ... @@ -157,7 +148,7 @@
157 148 // [self disconnect:peripheral];
158 149 //}
159 150  
160   -#pragma mark -- CBCentralManagerDelegate
  151 +//#pragma mark -- CBCentralManagerDelegate
161 152 //- (void)centralManagerDidUpdateState:(CBCentralManager *)central {
162 153 // NSString *messtoshow;
163 154 // switch (central.state) {
... ... @@ -229,7 +220,7 @@
229 220 // }
230 221 //}
231 222  
232   -#pragma mark -- CBPeripheralDelegate
  223 +//#pragma mark -- CBPeripheralDelegate
233 224 //- (void)peripheral:(CBPeripheral *)peripheral didDiscoverServices:(NSError *)error{
234 225 // NSLog(@"didDiscoverServices: %@", peripheral.name);
235 226 // if (error) {
... ... @@ -253,16 +244,16 @@
253 244 }
254 245  
255 246 NSLog(@"UUID: %@, %@, %@", service.UUID.UUIDString, writeServiceUUID, indicateServiceUUID);
256   - if ([service.UUID.UUIDString isEqualToString:writeServiceUUID]) {
  247 + if ([writeServiceUUID containsString:service.UUID.UUIDString]) {
257 248 for (CBCharacteristic *characteristic in service.characteristics) {
258 249 NSLog(@"DiscoverCharacteristics: %@", characteristic.UUID);
259   -
  250 +
260 251 if ([characteristic.UUID.UUIDString isEqualToString:writeCharacteristicUUID])
261 252 characteristicWrite = characteristic;
262 253 }
263 254 }
264 255  
265   - if ([service.UUID.UUIDString isEqualToString:indicateServiceUUID]) {
  256 + if ([indicateServiceUUID containsString:service.UUID.UUIDString]) {
266 257 for (CBCharacteristic *characteristic in service.characteristics) {
267 258 NSLog(@"DiscoverCharacteristics: %@", characteristic.UUID);
268 259  
... ... @@ -278,35 +269,35 @@
278 269 connectedPeripheral = peripheral;
279 270 [connectTimer invalidate];
280 271  
281   -// if(_connectionDelegate && [_connectionDelegate respondsToSelector:@selector(onConnectedPeripheral:)]) {
282   -// [_connectionDelegate onConnectedPeripheral:peripheral];
283   -// }
  272 + if(_connectionDelegate && [_connectionDelegate respondsToSelector:@selector(onConnectedPeripheral:)]) {
  273 + [_connectionDelegate onConnectedPeripheral:peripheral];
  274 + }
284 275 }
285 276 }
286 277  
287   -- (void)peripheral:(CBPeripheral *)peripheral didReadRSSI:(NSNumber *)RSSI error:(nullable NSError *)error {
288   -
289   -}
  278 +//- (void)peripheral:(CBPeripheral *)peripheral didReadRSSI:(NSNumber *)RSSI error:(nullable NSError *)error {
  279 +//
  280 +//}
290 281  
291   -- (void)peripheral:(CBPeripheral *)peripheral didWriteValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error {
292   -
293   - if (error) {
294   - NSLog(@"%@,%@,Error didWriteValueForCharacteristic:%@",characteristic.UUID,[characteristic value], [error localizedDescription]);
295   - return;
296   - }
297   -
298   -}
  282 +//- (void)peripheral:(CBPeripheral *)peripheral didWriteValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error {
  283 +//
  284 +// if (error) {
  285 +// NSLog(@"%@,%@,Error didWriteValueForCharacteristic:%@",characteristic.UUID,[characteristic value], [error localizedDescription]);
  286 +// return;
  287 +// }
  288 +//
  289 +//}
299 290  
300   -- (void)peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error {
301   - if (error) {
302   - NSLog(@"Error didUpdateValueForCharacteristic:%@", [error localizedDescription]);
303   - return;
304   - }
305   - NSLog(@"didUpdateValueForCharacteristic: %@ %@", characteristic.UUID, characteristic.value);
306   -
307   - if (_dataDelegate && [_dataDelegate respondsToSelector:@selector(onDataReceive:)]) {
308   - [_dataDelegate onDataReceive:[characteristic value]];
309   - }
310   -}
  291 +//- (void)peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error {
  292 +// if (error) {
  293 +// NSLog(@"Error didUpdateValueForCharacteristic:%@", [error localizedDescription]);
  294 +// return;
  295 +// }
  296 +// NSLog(@"didUpdateValueForCharacteristic: %@ %@", characteristic.UUID, characteristic.value);
  297 +//
  298 +// if (_dataDelegate && [_dataDelegate respondsToSelector:@selector(onDataReceive:)]) {
  299 +// [_dataDelegate onDataReceive:[characteristic value]];
  300 +// }
  301 +//}
311 302  
312 303 @end
... ...
HDFwear/OTA/OTAUpdateViewController.h 0 โ†’ 100644
  1 +//
  2 +// OTAUpdateViewController.h
  3 +// HDFwear
  4 +//
  5 +// Created by admin on 2024/1/24.
  6 +//
  7 +
  8 +#import <UIKit/UIKit.h>
  9 +
  10 +NS_ASSUME_NONNULL_BEGIN
  11 +
  12 +@interface OTAUpdateViewController : UIViewController
  13 +
  14 +@end
  15 +
  16 +NS_ASSUME_NONNULL_END
... ...
HDFwear/OTA/OTAUpdateViewController.m 0 โ†’ 100644
  1 +//
  2 +// OTAUpdateViewController.m
  3 +// HDFwear
  4 +//
  5 +// Created by admin on 2024/1/24.
  6 +//
  7 +
  8 +#import "OTAUpdateViewController.h"
  9 +
  10 +@interface OTAUpdateViewController ()
  11 +
  12 +@end
  13 +
  14 +@implementation OTAUpdateViewController
  15 +
  16 +- (void)viewDidLoad {
  17 + [super viewDidLoad];
  18 + // Do any additional setup after loading the view from its nib.
  19 +}
  20 +
  21 +/*
  22 +#pragma mark - Navigation
  23 +
  24 +// In a storyboard-based application, you will often want to do a little preparation before navigation
  25 +- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
  26 + // Get the new view controller using [segue destinationViewController].
  27 + // Pass the selected object to the new view controller.
  28 +}
  29 +*/
  30 +
  31 +@end
... ...
HDFwear/OTA/OTAUpdateViewController.xib 0 โ†’ 100644
  1 +<?xml version="1.0" encoding="UTF-8" standalone="no"?>
  2 +<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="13142" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
  3 + <dependencies>
  4 + <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="12042"/>
  5 + <capability name="Safe area layout guides" minToolsVersion="9.0"/>
  6 + <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
  7 + </dependencies>
  8 + <objects>
  9 + <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="OTAUpdateViewController">
  10 + <connections>
  11 + <outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
  12 + </connections>
  13 + </placeholder>
  14 + <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
  15 + <view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="i5M-Pr-FkT">
  16 + <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
  17 + <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
  18 + <color key="backgroundColor" systemColor="systemBackgroundColor" cocoaTouchSystemColor="whiteColor"/>
  19 + <viewLayoutGuide key="safeArea" id="Q5M-cg-NOt"/>
  20 + </view>
  21 + </objects>
  22 +</document>
... ...