Commit Graph
108 Commits
Author SHA1 Message Date
hai007 5fc75e3363 Add AWDL as a new Medium type in Nearby platform
PiperOrigin-RevId: 748492229
2025-04-16 18:35:21 -07:00
hai007 3c77c0dfa0 Stop BLE_V2 scan before upgrading to Wifi HotSpot to avoid interference
PiperOrigin-RevId: 746541587
2025-04-11 11:59:18 -07:00
Edwin Wu b10957d712 Add OpenL2capServerSocket and skeleton BleL2capServerSocket/BleL2capSocket
PiperOrigin-RevId: 746334743
2025-04-11 00:01:50 -07:00
Edwin Wu 7f488271f1 Implement openL2CAPServerWithCompletionHandler in GNCBLEMedium class.
PiperOrigin-RevId: 745877478
2025-04-09 22:58:34 -07:00
Edwin Wu 675e4f738f Refactor the GNCBLEL2CAPServer.
PiperOrigin-RevId: 745855701
2025-04-09 21:48:02 -07:00
hai007 8acf924934 Add AWDL as a new Medium type in Nearby platform
PiperOrigin-RevId: 741515012
2025-03-28 07:14:40 -07:00
Edwin Wu ea78dcf616 Implement L2CAP stream wrapper.
PiperOrigin-RevId: 741161066
2025-03-27 08:22:27 -07:00
hai007 ba24d92ca1 Add Hotspot Connector(STA) feature for IOS NC
PiperOrigin-RevId: 736593880
2025-03-13 12:11:37 -07:00
Guogang Li c20cb39f60 Implement API to scan multiple services in iOS
PiperOrigin-RevId: 736557350
2025-03-13 10:34:30 -07:00
Edwin Wu 18f52de400 Implement L2CAPServer
PiperOrigin-RevId: 733593766
2025-03-04 22:50:09 -08:00
Guogang Li fe6ad715ac Apply base85 encoding and decoding
PiperOrigin-RevId: 731877970
2025-02-27 14:58:15 -08:00
Guogang Li 528c71490c fix a base85 bug on iOS
PiperOrigin-RevId: 731849590
2025-02-27 13:44:15 -08:00
Anay Wadhera 29792c8938 Swap rules to OSS
PiperOrigin-RevId: 731795253
2025-02-27 11:16:31 -08:00
Edwin Wu 20462fafd9 Refactor GNCNWFramework to take an include_peer_to_peer option in the constructor instead of passing it to each function call.
PiperOrigin-RevId: 731583634
2025-02-26 22:25:06 -08:00
Guogang Li 5c3cc4eb71 Add base85 extension to NSData
PiperOrigin-RevId: 731381576
2025-02-26 11:02:30 -08:00
hai007 fb8bfe05b2 [NearbyConnections] Fix IOS incorrect endpoint info from GATT server
1. Put the entire regular advertisement onto the gatt server
2. Provide the gatt read characterestics with offset.

PiperOrigin-RevId: 731102862
2025-02-25 18:17:05 -08:00
Edwin Wu 0c1b0ae1d9 Rename NWFramwork folder name to a more proper name WiFiCommon
PiperOrigin-RevId: 728865577
2025-02-19 16:43:32 -08:00
Edwin Wu 74146df90a Rename WifiLan to NWFramework(Network.Framework) and put them as common codes.
PiperOrigin-RevId: 725486114
2025-02-10 22:47:21 -08:00
Guogang Li a51a93a6a1 Create xcframework for Nearby Connections
PiperOrigin-RevId: 721578171
2025-01-30 17:52:17 -08:00
Nick Bourdakos 01a4c7967e No-op the disconnect method in the BLE GATT client
PiperOrigin-RevId: 696171997
2024-11-13 09:54:23 -08:00
Francis Tsui b4d11ecbda Use machine name for advertisement when user not logged in.
PiperOrigin-RevId: 690479544
2024-10-27 22:52:21 -07:00
Francis Tsui 5840369ce6 Remove unused deviceInfo methods.
PiperOrigin-RevId: 688334273
2024-10-21 17:46:16 -07:00
Nick Bourdakos cc205590ab Fix Apple platform implementation bug for SendRequest
PiperOrigin-RevId: 685269857
2024-10-12 15:38:05 -07:00
Nick Bourdakos 1a87241ffd Implement GattClient#Disconnect for Apple implementation of BLEv2
PiperOrigin-RevId: 679218551
2024-09-26 11:09:30 -07:00
Guogang Li f8669cf16d Clean up logging implementations
PiperOrigin-RevId: 670714192
2024-09-03 14:48:52 -07:00
hai007 a2d018cd87 Add nullability annotation
PiperOrigin-RevId: 637062647
2024-05-24 16:19:04 -07:00
Edwin Wu 78505e91f7 Add the privacy manifests for swift NC-SDK.
PiperOrigin-RevId: 623676227
2024-04-10 19:19:11 -07:00
Guogang Li 387a51b260 internal update
PiperOrigin-RevId: 619595164
2024-03-27 11:25:55 -07:00
Francis Tsui 1072030be8 Copy sharing/internal, sharing/common and sharing/scheduling to github.
- Move Abseil pin to same as that used in Chromium.
- Disabled layering_check due to build failure in absl.

PiperOrigin-RevId: 596631921
2024-01-08 10:20:37 -08:00
Francis Tsui aea7a09a24 Switch DeviceInfo to use UTF-8 strings.
- Move conversion from native to UTF-8 into platform impl.

PiperOrigin-RevId: 592912664
2023-12-21 11:35:20 -08:00
Nick Bourdakos 197d3f8476 Fix weave bug for payloads that exceed the maximum write length
PiperOrigin-RevId: 563185164
2023-09-06 12:39:47 -07:00
Nick Bourdakos aa0c06257f Add macOS as an OS type
PiperOrigin-RevId: 561959449
2023-09-01 08:19:11 -07:00
Nick Bourdakos 16c6ef924b Fix iOS BLE bugs and crashes
PiperOrigin-RevId: 561695661
2023-08-31 10:37:46 -07:00
Nick Bourdakos 965cc0ecbc Add implementation for async BLE start scan/advertise
PiperOrigin-RevId: 559863656
2023-08-24 14:07:46 -07:00
Nick Bourdakos 91fb4a9a3e Add stop advertising and stop scanning BLE implementation for Apple platforms
PiperOrigin-RevId: 559838443
2023-08-24 12:45:23 -07:00
Nick Bourdakos 387393f1d6 Delete old BLE code for Apple platforms
PiperOrigin-RevId: 559515626
2023-08-23 12:54:15 -07:00
Nick Bourdakos 034865481a Sanitize incoming file names
PiperOrigin-RevId: 559175545
2023-08-22 11:37:02 -07:00
Nick Bourdakos 9998093366 Add Objective-C++ BLE Medium wrapper
PiperOrigin-RevId: 558278732
2023-08-18 16:37:09 -07:00
Nick Bourdakos 7933842c29 Add BLE Medium
PiperOrigin-RevId: 557933813
2023-08-17 14:17:28 -07:00
Nick Bourdakos 07a94a950d Add Objective-C++ GATT client wrapper
PiperOrigin-RevId: 557925490
2023-08-17 13:48:48 -07:00
Nick Bourdakos 4aa52b45f9 Add GATT client
PiperOrigin-RevId: 557919250
2023-08-17 13:27:39 -07:00
Guogang Li fabeff0d57 Added APIs to control device sleep
These APIs can be used to prevent device into sleep when sending supper big files.

PiperOrigin-RevId: 556809236
2023-08-14 09:05:11 -07:00
Nick Bourdakos 9d2cfc19c9 Add Objective-C++ GATT server wrapper
PiperOrigin-RevId: 552636264
2023-07-31 17:20:14 -07:00
Nick Bourdakos c1d74120a0 Add initial BLEv2 Bluetooth Adapter
PiperOrigin-RevId: 551922301
2023-07-28 12:32:27 -07:00
Nick Bourdakos 0a13ce51f4 Make GNCBLEGATTServer thread safe
Fixes an issue where if a characteristic is created and then updated with a non-nil value, and a new characteristic under the same service is added, then when the service is re-added the old characteristic will be permanently cached and the dynamic reads will stop working.

This also eliminates the issue when characteristics are created concurrently, since service additions are batched, if the service addition fails then only one of the characteristics will know that it failed to get added.

This change also introduces the nuance of "success" does not mean the CoreBluetooth method has completed successfully, but instead means that the intended state has been recorded and the class will do its best to maintain that state. For example, a successful "start advertising" call means that we have the advertisement cached and we will start advertising as soon as we can (like BT transitions from off to on) and will do our best to keep advertising (like BT transitions from on to off to on again).

PiperOrigin-RevId: 551660634
2023-07-27 15:40:30 -07:00
Nick Bourdakos a42cdc7346 Move Server Socket and its dependencies to their own files
PiperOrigin-RevId: 551330682
2023-07-26 15:21:46 -07:00
Thomas Van Lenten 7e1f286d93 Don't compile utils.mm twice.
PiperOrigin-RevId: 551315072
2023-07-26 14:25:24 -07:00
Nick Bourdakos de3f638129 Extract BLE code into its own target
PiperOrigin-RevId: 551074383
2023-07-25 20:23:59 -07:00
Nick Bourdakos 0f8e5283a4 Add GATT server
PiperOrigin-RevId: 549080231
2023-07-18 12:37:23 -07:00
Nick Bourdakos 96348b6ba7 Add BLE conversion utils
PiperOrigin-RevId: 547958170
2023-07-13 16:20:04 -07:00