我正在按照他们的文档集成万环SDK。我有框架,必要的库,桥头,框架的导入。我发现在名称中使用空格或破折号时bundle和api-key存在一些问题,因此我简化了项目名称。
我用POCGimbalNoPunctuationBundleId的包名(即%PRODUCT_NAME)创建了项目,包ID前缀是com.mycompany.ios
然后我使用产品名称在Gimbal Manager中创建API密钥,bundle ID前缀生成一个密钥,我复制到我的appdelegate代码中。
set-apikey被调用,SDK记录日志:
2015-08-25 19:14:32:078 POCGimbalNoPunctuationBundleId[17282:607] Request (v10/registration/) failed: Error Domain=QLRestTemplateErrorDomain Code=-1011 "Expected status code in (200-299), got 400" UserInfo=0x7feeb151bad0 {NSLocalizedDescription=Expected status code in (200-299), got 400, QL_HTTP_STATUS_CODE=400, NSErrorFailingURLKey=https://ios.api.gimbal.com/service/v10/registration/, NSLocalizedFailureReason={"errorMessage":"Application verification failed. Invalid com.mycompany.ios.POCGimbalNoPunctuationBundleId for application with package com.mycompany.ios.POCGimbalNoPunctuationBundleId","statusCode":10000}}
2015-08-25 19:14:32:079 POCGimbalNoPunctuationBundleId[17282:607] Error during registration:Expected status code in (200-299), got 400
我明白它在告诉我什么,但我不明白为什么——这一切似乎都与样本应用程序和万环管理器中的API键相匹配。
帮助!我已经断断续续地纠结了三天了
文档中(对我来说)没有明确说明bundle ID应该包含产品名称。我认为这是内部建立的。因此,正确的答案是在问题的bundle ID后面加上"MyAppName"。
com.mycompany.ios.MyAppName
小心包含空格或破折号的产品名称。它们被转换为下划线(_)。好运。