我尝试将移动分析与 Swift 3 一起使用,目前通过 CocoaPods 拥有 AWSCore 2.5.9 和 AWSMobileAnalytics 2.5.9,但我无法记录任何事件。我的合作伙伴已成功使用我正在使用的 Android 记录事件CognitoIdentityPoolId
,并且我还确认它AmazonMobileAnalyticsFullAccess
附加了策略。
我的 AppDelegate 中有以下代码didFinishLaunchingWithOptions
let credentialsProvider = AWSCognitoCredentialsProvider(regionType:.USWest2,
identityPoolId:"us-west-2:theRestOfMyID")
let configuration = AWSServiceConfiguration(region:.USWest2,
credentialsProvider:credentialsProvider)
AWSServiceManager.default().defaultServiceConfiguration = configuration
let analyticsConf = AWSMobileAnalyticsConfiguration.init()
analyticsConf.serviceConfiguration = AWSServiceManager.default().defaultServiceConfiguration
_ = AWSMobileAnalytics.init(forAppId: "MyMobileAnalyticsAppId", configuration: analyticsConf)
这导致控制台输出:
2017-07-20 16:39:53:875 test2[7288:125553] Mobile Analytics SDK(2.0-alpha) Initialization successfully completed.
2017-07-20 16:39:53:875 test2[7288:125635]
==========Batch Object==========
{"attributes":{"_session.id":"82e879d9-C9E6D9C7-20170720-233953870","ver":"v2.0","_session.startTime":"2017-07-20T23:39:53.872Z"},"event_type":"_session.start","timestamp":"2017-07-20T23:39:53.873Z"}
2017-07-20 16:39:53:876 test2[7288:125635] Event: '_sess...' recorded to local filestore
我有一个按钮,用于记录事件,然后尝试提交事件:
let eventClient = AWSMobileAnalytics(forAppId: "MyMobileAnalyticsAppId").eventClient
guard let client = eventClient else {
print("Error creating AMA event client")
return
}
guard let event = client.createEvent(withEventType: "test_50_logIn") else {
print("Error creating AMA event")
return
}
event.addAttribute("username", forKey: "sample")
event.addAttribute("device", forKey: "ios")
client.record(event)
client.submitEvents()
但是,submitEvents 总是会触发以下错误,这两天我一直无法解决。结果,我无法记录单个 iOS 事件。
2017-07-20 16:46:01:736 test2[7566:129412] Unable to successfully deliver events to server. Error Message:Error Domain=NSURLErrorDomain Code=-1003 "A server with the specified hostname could not be found." UserInfo={NSUnderlyingError=0x6080002438a0 {Error Domain=kCFErrorDomainCFNetwork Code=-1003 "(null)" UserInfo={_kCFStreamErrorCodeKey=8, _kCFStreamErrorDomainKey=12}}, NSErrorFailingURLStringKey=https://mobileanalytics.us-west-2.amazonaws.com/2014-06-05/events, NSErrorFailingURLKey=https://mobileanalytics.us-west-2.amazonaws.com/2014-06-05/events, _kCFStreamErrorDomainKey=12, _kCFStreamErrorCodeKey=8, NSLocalizedDescription=A server with the specified hostname could not be found.}
我在集成指南下看不到其他步骤,有谁知道如果 ID 在 android 集成中工作得很好,可能会出现什么问题?谢谢!