使用设备检查时,它每次都会生成新的令牌,如下所示,
生成的令牌:
eyJiaXQwIjpmYWxzZSwidG9rZW4iOiJBZ0FBQUVMcFdkRkZXdkF0aE5CUU80Zyt3V1FFVU5rMCttZTg5dkxmdjVaaW5ncHlPT2tnWFhYeWpQellUeldtV1N1K0JZcWNENDdieWlyTForKzNkSmNjcEY5OWhXcHBUN0c1eEF1VSt5NTZXcFNZc0FRTVVyaTJZSGplTVo3NmJnM3hqa1ozTnZpdFM2Q3NoWFJPNUVl
使用比特值和令牌,我们可以找到设备是否存在于苹果中,即使我们卸载了应用程序。但是它如何用于唯一标识设备。
成功回复:
{"status":200,"bit0":false,"bit1":false,"lastUpdated":"2018-10"}
服务器请求:
{
“device_token”:“wlkCDA2Hy/m5jQ1cs...”“transaction_id”:“4-w3d4-567-2376674f8uj8”,“时间戳”:1487716472000
}
这是我用于代码的链接:
我们已经在应用程序中实现了深层链接活动。它适用于iOS11。当我们通过Web门户发送SMS时。它在iPhone中收到。更新到iOS 12后,我的iPhone设备未收到链接消息。这是我的代码如下:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
let branch: Branch = Branch.getInstance()
branch.initSession(launchOptions: launchOptions, automaticallyDisplayDeepLinkController: true, deepLinkHandler: { params, error in
if error == nil {}}
// Respond to URI scheme links
func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool {
Branch.getInstance().handleDeepLink(url);
return true
}
Run Code Online (Sandbox Code Playgroud)
我们还在plist中添加了branch_app_domain,branch_key和URL Type。
我们需要在代码中添加任何内容吗?
我们正在研究推送通知。当我们在活动、后台、前台和终止时收到通知时,我们需要调用 Web 服务。但是当我们终止应用程序时,我们会收到通知但无法调用 Web 服务。调用 Web 服务的原因是为了识别移动应用程序收到的消息。
func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) {
if ( application.applicationState == .inactive || application.applicationState == .background ) {
**// Need to call API**
}
}
Run Code Online (Sandbox Code Playgroud)
有没有其他方法可以识别消息是在服务器端的移动应用程序中传递的?
我们正在尝试使用终端而不是 Xcode->Product->Archieve 运行项目。我们已成功完成清理、构建和存档。导出 .ipa 时出现以下错误“无法打开文件“ExportOptions.plist”,因为没有这样的文件。”。当我在堆栈溢出中冲浪时,我对 plist 文件一无所知。
例如:我们有一个原始名称为 MyApp 的应用程序?
xcodebuild clean -workspace MyApp.xcworkspace -scheme 开发
xcodebuild build -workspace MyApp.xcworkspace -scheme 开发
xcodebuild archive -workspace MyApp.xcworkspace -scheme Development -archivePath ~/Users/Desktop/SampleApp/MyApp.xcarchive
上面的代码工作正常。使用以下行时,我收到“ExportOptions.plist”错误。
??
xcodebuild -exportArchive -archivePath ~/Users/Desktop/SampleApp/MyApp.xcarchive -exportPath ~/Users/Desktop/SampleApp/MyApp -exportOptionsPlist ~/Users/Desktop/SampleApp/ExportOptions.plist
我的问题是: ??
我正在使用 firebase 来跟踪我的项目中的崩溃,并且我在我的项目中使用了以下 pod。
pod 'FirebaseCore', '6.6.4'
pod 'FirebaseMessaging', '4.3.0'
pod 'FirebaseAnalytics','6.3.1'
Run Code Online (Sandbox Code Playgroud)
在归档这个项目以放置 testflight 版本时,我在下面遇到了 google 实用程序的重复错误:
Multiple commands produce '/Path/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/GoogleUtilities.framework':
1) Target 'GoogleUtilities-00567490' has create directory command with output '/Path//IntermediateBuildFilesPath/UninstalledProducts/iphoneos/GoogleUtilities.framework'
2) Target 'GoogleUtilities-54e75ca4' has create directory command with output '/Path//IntermediateBuildFilesPath/UninstalledProducts/iphoneos/GoogleUtilities.framework'
Run Code Online (Sandbox Code Playgroud)
当我在构建设置中检查我的 Pods 设置时,我看到在项目中添加了两次 google 实用程序。我已经删除了其中一个出现错误的 GoogleUtilities。
注意:我可以运行构建,但无法存档。是否有任何修复方法可以在不更改旧构建系统的情况下实现此构建?
因为我已经为我的 SDK 启用了库分发,所以当我对旧版进行更改时,它会引发错误。
我使用的是 macOS Mojave 10.14,我的 Xcode 版本是 10.1。当我设置断点时,我收到此错误。
来自调试器的消息:LLDB RPC 服务器已崩溃。崩溃日志位于 ~/Library/Logs/DiagnosticReports 并具有前缀“lldb-rpc-server”。请提交错误并附上最新的崩溃日志。
我该如何解决?我参考了很多答案,他们说的是 打印值而不是设置断点,另一个是检查编辑方案中的模式(调试或发布)。有没有其他解决方案?
我们正在研究用于崩溃报告的结构。我们有四个环境 debug、dev、prod 和 staging。因此,基于环境,我们在结构设置中创建了组织并获取 API 密钥。这样我们就可以在具有相同捆绑 ID 的不同环境中使用 API 密钥。
对于 Fabric,我遵循了此链接:适用于 iOS 应用程序的 Fabric Crashlytics 多个环境
但是现在我们必须将结构移到 firebase。我们已经为我的一个环境创建了这个项目。但我想在 firebase 中创建多个具有相同包 ID 的环境。任何人都可以给我一个想法吗?
参考链接:在此链接中,他们为不同的 bundle id 创建了开发和生产。https://medium.com/bam-tech/setup-firebase-on-ios-android-with-multiple-environments-ad4e7ef35607
ios ×7
swift ×5
xcode ×4
firebase ×3
branch.io ×1
deep-linking ×1
devicecheck ×1
objective-c ×1
plist ×1
terminal ×1
xcodebuild ×1