Post not yet marked as solved
Hello, @PrithiviApple
try using the real device, that works for me.
Post not yet marked as solved
CallKit integration
Disclaimer: I am not sure if this is the best way doing it but this has worked for me so far:
Configure WebRTC audio session to use manual audio and disable audio:
RTCAudioSession.sharedInstance().useManualAudio = true
RTCAudioSession.sharedInstance().isAudioEnabled = false
On your CXProvider delegate's provider(CXProvider, didActivate: AVAudioSession) method:
Call RTCAudioSession.sharedInstance().audioSessionDidActivate with the AVAudioSession from the CXProvider
Enable audio: RTCAudioSession.sharedInstance().isAudioEnabled = true
On your CXProvider delegate's provider(CXProvider, didDeactivate: AVAudioSession) call RTCAudioSession.sharedInstance().audioSessionDidDeactivate with the AVAudioSession from the CXProvider
WebRTC and CallKit talk from 2016: https://youtu.be/JB2MdcY1MKs?t=6m23s
credit to stasel from
WebRTC-iOS
Post not yet marked as solved
Used like this :
import Foundation
import CoreBluetooth
class BLEManager: NSObject, ObservableObject, CBCentralManagerDelegate {
var myCentral: CBCentralManager!
@Published var peripherals = [Peripheral]()
override init() {
super.init()
myCentral = CBCentralManager(delegate: self, queue: nil)
myCentral.delegate = self
}
Post not yet marked as solved
I don't want to use iCloud storage sync only the real database.
Post not yet marked as solved
I'm having the same problem. (2020 from future 😅)
Thanks to you 🙏 ❤️ @Claude31
I just found it it's called ASAuthorizationAppleIDProvider.credentialRevokedNotification
without NSNotification.Name
I test the app and it's working 👏😍
this all code I used:
import SwiftUI
import AuthenticationServices
@main
struct AppName: App {
@ObservedObject var userAuth: UserAuth = UserAuth()
let pub = NotificationCenter.default
.publisher(for: ASAuthorizationAppleIDProvider.credentialRevokedNotification)
@SceneBuilder var body: some Scene {
WindowGroup {
ContentView()
.environmentObject(userAuth)
.onAppear(perform: {
credentialState()
})
.onReceive(pub, perform: { _ in
credentialState()
})
}
}
func credentialState() {
let appleIDProvider = ASAuthorizationAppleIDProvider()
appleIDProvider.getCredentialState(forUserID: UserDefaults.standard.string(forKey:"userProfileID") ?? "") { (credentialState, error) in
switch credentialState {
case .authorized:
// The Apple ID credential is valid.
userAuth.login()
case .revoked, .notFound:
// The Apple ID credential is either revoked or was not found.
userAuth.logOut()
default:
break
}
}
}
}
@Claude31 is this mention work😅
I found this in the documentation credentialRevokedNotification - https://developer.apple.com/documentation/authenticationservices/asauthorizationappleidprovider/3175424-credentialrevokednotification I think it's renamed to this
as apple documentation it's available for iOS 13.0+
but still
Type 'NSNotification.Name' has no member 'credentialRevokedNotification'
Here 👉Introducing Sign In with Apple - https://developer.apple.com/wwdc19/706 WWDC19 12:48
Thanks for respond @Claude31,
same nothing in NSNotification.Name.ASAuth...
Type 'NSNotification.Name' has no member 'ASAuthorizationAppleIDProvider'
Post not yet marked as solved
Hey, @wlawver
I believe you using iOS 12 Public beta.
Your device's configuration not compatible with Xcode version
you need to update the Xcode to 12 beta as well.
Post not yet marked as solved
Yes, as apple documentation - https://developer.apple.com/documentation/exposurenotification its work in:
iOS 13.5 +
tvOS 14.0+ (Beta)