Last Updated on : 2023-06-05 02:49:23download
Application Loader
be found in Xcode 11?Starting Xcode 11, Application Loader is unavailable. Apple has launched a new tool to upload .ipa
files. You can install the Transporter tool from App Store to upload .ipa
files.
pod install
?CocoaPods 1.3.0 or later must be used. You can check the version by running pod --version
.
CDN: trunk Repo update failed / trunk URL couldn't be downloaded
is returned when pod install
is run. How do I deal with this problem?By default, CocoaPods 1.8.0 uses the CDN Repo source. For more information, see CocoaPods documentation.
If you cannot access the source due to network conditions, you can edit the Podfile
and restore the source to Master Repo
.
- source 'https://cdn.cocoapods.org/'
+ source 'https://github.com/CocoaPods/Specs.git'
[[ThingSmartActivator sharedInstance] currentWifiSSID]
cannot return a valid Wi-Fi service set identifier (SSID). How do I deal with this problem?For Xcode 10, required permissions must be granted to return Wi-Fi information. Solution: Set Access WiFi Information to ON at Xcode > [Project Name] > Targets > [Target Name] > Capabilities.
For more information, see iOS Version Adaptation.
Starting SDK v2.8.0, the security image verification is required and AppKey
and AppSecret
are updated. For these SDK versions, if your app crashes and the error message Terminating app due to uncaught exception 'start sdk error', reason: 'security image not found'
is returned, go to the Thing IoT Development Platform and generate the files required for SDK initialization. For more information, see Preparation.
Check whether the data types of device data points (DPs) are correct. For example, a DP of Value type can be sent in the format of @{@"2": @(25)}
rather than @{@"2": @"25"}
.
After SDK initialization, run the following code:
[[ThingSmartSDK sharedInstance] setDebugMode:YES];
didFinishLaunchingWithOptions
API method to initialize the Push
method.For more information, see Integrate with Push Notifications.
The SDK returns a local language based on [[NSBundle mainBundle] preferredLocalizations]
. You must configure the multilingual display settings in your project.
Currently, the SDK does not support control of infrared devices.
Before multiple DPs are sent, check whether a conflict might occur between these DPs. We recommend that you send DPs without a conflict in the same command. For example, to control a lighting device:
Yes, you can. In this case, only the device pairing and control features are required. Only the following dependencies are required:
# Capabilities to manage homes, devices, rooms, and groups
pod 'ThingSmartDeviceKit',
# Capabilities of device pairing
pod 'ThingSmartActivatorKit',
You can reference the following modules as needed:
# Bluetooth Low Energy (LE) capabilities
pod 'ThingSmartBLEKit',
# Capabilities of `sigMesh`
pod 'ThingSmartBLEMeshKit',
# Capabilities of smart scenes
pod 'ThingSmartSceneKit',
# Capabilities of scheduled tasks for devices and groups
pod 'ThingSmartTimerKit',
# Capabilities of Message Center
pod 'ThingSmartMessageKit',
# Capabilities of feedback
pod 'ThingSmartFeedbackKit',
Undefined symbols xxx
is returned during the integration with the SDK. How do I deal with this problem?In most cases, this error is caused by inconsistent versions among different SDK components.
Make sure that each referenced library uses a consistent version number, in which the major and minor versions are the same. For example, v3.12.1 and v3.12.5 are consistent. If not, run pod update
to update the version and recompile the code.
Error Domain=NSURLErrorDomain Code=-999 "Canceled"
is returned after an API method of the SDK is called. How do I deal with this problem?Make sure that the object in the API request is a global variable, for example, self.feedBack = [[ThingSmartFeedback alloc] init];
. Otherwise, it will be released earlier than expected.
Make sure that bundleId
, appKey
, appSecret
, and the security image are consistent with those used on the Thing IoT Development Platform. Any mismatch will cause the authentication to be failed. For more information, see Preparation.
library not found for -XXX
is returned during sample compilation. How do I deal with this problem?Make sure that you have opened the project .xcworkspace
rather than .xcproject
.
Undefined symbols for architecture arm64
occurred when I used a Mac with M1 chip to compile my project for iOS?Error code sample:
Undefined symbols for architecture arm64:
"OBJC_CLASS$ThingAudioEngine", referenced from:
objc-class-ref in ThingSpeechKit(ThingSpeechVADetector.o)
"OBJC_CLASS$ThingSceneIntent", referenced from:
objc-class-ref in ThingSiriShortcutModule(ThingSceneShortcutManager.o)
"OBJC_CLASS$_DWKWebView", referenced from:
objc-class-ref in ThingHybridContainer(ThingHybridContainerVC.o)
ld: symbol(s) not found for architecture arm64.
Solution:
Perform the following steps for troubleshooting:
Add the following code block to the Podfile:
post_install do |installer|
installer.pods_project.build_configurations.each do |config|
config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
end
end
Open your project in Xcode, choose Build Settings > Excluded Architectures, and then add the option Any iOS Simulator SDK with the value arm64
.
Run pod install
.
Is this page helpful?
YesFeedbackIs this page helpful?
YesFeedback