mirror of https://github.com/grpc/grpc.git
parent
49d229b3fc
commit
df9753d98a
1 changed files with 32 additions and 0 deletions
@ -0,0 +1,32 @@ |
|||||||
|
[](https://cocoapods.org/pods/gRPC) |
||||||
|
# gRPC Objective-C with CFStream |
||||||
|
|
||||||
|
gRPC Objective-C library now provides the option to use Apple's CFStream API (rather than TCP |
||||||
|
sockets) for networking. Using CFStream resolves a bunch of network connectivity transition issues |
||||||
|
(see the [doc](https://github.com/grpc/grpc/blob/master/src/objective-c/NetworkBehavior.md) for more |
||||||
|
information). |
||||||
|
|
||||||
|
CFStream integration is now in experimental state. You will need explicit opt-in to use it to get |
||||||
|
the benefits of resolving the issues above. We expect to make CFStream the default networking |
||||||
|
interface that gRPC uses when it is ready for production. |
||||||
|
|
||||||
|
## Usage |
||||||
|
If you use gRPC following the instruction of |
||||||
|
[README.md](https://github.com/grpc/grpc/blob/master/src/objective-c/README.md): |
||||||
|
- Simply replace the |
||||||
|
dependency on `gRPC-ProtoRPC` with `gRPC-ProtoRPC/CFStream`. The build system will take care of |
||||||
|
everything else and switch networking to CFStream. |
||||||
|
|
||||||
|
If your project directly depends on podspecs other than `gRPC-ProtoRPC` (e.g. `gRPC` or |
||||||
|
`gRPC-Core`): |
||||||
|
|
||||||
|
- Make your projects depend on subspecs corresponding to CFStream in each gRPC podspec. For |
||||||
|
`gRPC-Core`, you will need to make sure that the completion queue you create is of type |
||||||
|
`GRPC_CQ_NON_POLLING`. This behavior is expected to be changed soon during the experimantal so |
||||||
|
that you do not have to modify the completion queue type. |
||||||
|
|
||||||
|
## Notes |
||||||
|
|
||||||
|
- Currently we do not support on platforms other than iOS, although it is likely that this |
||||||
|
integration can run on MacOS targets with Apple's compiler. |
||||||
|
- Let us know if you meet any issue by filing issue and ping @muxi. |
Loading…
Reference in new issue