📱 iOS DeviceCheck SDK for Go - query and modify the per-device bits
go get github.com/rinchsan/device-check-go/v2
import "github.com/rinchsan/device-check-go/v2"
cred := devicecheck.NewCredentialFile("/path/to/private/key/file") // You can create credential also from raw string/bytes
cfg := devicecheck.NewConfig("ISSUER", "KEY_ID", devicecheck.Development)
client := devicecheck.New(cred, cfg)
var result devicecheck.QueryTwoBitsResult
if err := client.QueryTwoBits("DEVICE_TOKEN", &result); err != nil {
switch {
// Note that QueryTwoBits returns ErrBitStateNotFound error if no bits found
case errors.Is(err, devicecheck.ErrBitStateNotFound):
// handle ErrBitStateNotFound error
default:
// handle other errors
}
}
if err := client.UpdateTwoBits("DEVICE_TOKEN", true, true); err != nil {
// handle errors
}
if err := client.ValidateDeviceToken("DEVICE_TOKEN"); err != nil {
// handle errors
}