如果尚未在 iOS 10 上安装到设备中,应用程序会立即崩溃
App crashes immediately if not already installed in the device on iOS 10
在将我的应用程序移植到 iOS10 时,我遇到了一个非常麻烦的问题。我一直在重新安装它,并且在现有副本上没有问题。然而,当我尝试删除它并从 Xcode 安装它时,该应用程序在执行后很快就悄无声息地崩溃了:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
使用简单的最终日志项:
[访问]“<"private">”
如果我反过来从 AppStore 上发布的副本下载它,然后从 Xcode 执行它,应用程序不会再崩溃。
如果我在 iPad 上执行它,它甚至会显示一条启用本地化的消息,该消息一直停留在 window 上,直到我重新启动设备。
该应用程序也会在模拟器上崩溃。
如果我没有返回崩溃报告,它可能是什么以及如何了解更多信息?
如果应用程序访问如下任何私人数据而没有在 plist 中定义它们(获得用户的许可),应用程序将崩溃
日历活动
地点
如果您使用上述任何一种,则需要将隐私声明添加到 info.plist
文件。
下图是访问日历:
Privacy - Calendars Usage Description = "some text"
key
= Privacy - Calendars Usage Description
value
= "some Text"
iOS 10
延续了隐私政策并实施了新的隐私规则。我们应该记住在下一个项目中实施它们。
对于您的问题,您需要将以下行添加到 info.plist
<!-- Calendars -->
<key>NSCalendarsUsageDescription</key>
<string><Your description goes here></string>
以下是隐私规则的其余部分:
<!-- Photo Library -->
<key>NSPhotoLibraryUsageDescription</key>
<string><Your description goes here></string>
<!-- Camera -->
<key>NSCameraUsageDescription</key>
<string><Your description goes here></string>
<!-- Microphone -->
<key>NSMicrophoneUsageDescription</key>
<string><Your description goes here></string>
<!-- Location -->
<key>NSLocationUsageDescription</key>
<string><Your description goes here></string>
<!-- Location When In Use -->
<key>NSLocationWhenInUseUsageDescription</key>
<string><Your description goes here></string>
<!-- Location Always -->
<key>NSLocationAlwaysUsageDescription</key>
<string><Your description goes here></string>
<!-- Calendars -->
<key>NSCalendarsUsageDescription</key>
<string><Your description goes here></string>
<!-- ⏰ Reminders -->
<key>NSRemindersUsageDescription</key>
<string><Your description goes here></string>
<!-- Motion -->
<key>NSMotionUsageDescription</key>
<string><Your description goes here></string>
<!-- Health Update -->
<key>NSHealthUpdateUsageDescription</key>
<string><Your description goes here></string>
<!-- Health Share -->
<key>NSHealthShareUsageDescription</key>
<string><Your description goes here></string>
<!-- ᛒ Bluetooth Peripheral -->
<key>NSBluetoothPeripheralUsageDescription</key>
<string><Your description goes here></string>
<!-- Media Library -->
<key>NSAppleMusicUsageDescription</key>
<string><Your description goes here></string>
希望这对您有所帮助。 :)
在将我的应用程序移植到 iOS10 时,我遇到了一个非常麻烦的问题。我一直在重新安装它,并且在现有副本上没有问题。然而,当我尝试删除它并从 Xcode 安装它时,该应用程序在执行后很快就悄无声息地崩溃了:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
使用简单的最终日志项: [访问]“<"private">”
如果我反过来从 AppStore 上发布的副本下载它,然后从 Xcode 执行它,应用程序不会再崩溃。 如果我在 iPad 上执行它,它甚至会显示一条启用本地化的消息,该消息一直停留在 window 上,直到我重新启动设备。 该应用程序也会在模拟器上崩溃。
如果我没有返回崩溃报告,它可能是什么以及如何了解更多信息?
如果应用程序访问如下任何私人数据而没有在 plist 中定义它们(获得用户的许可),应用程序将崩溃
日历活动
地点
如果您使用上述任何一种,则需要将隐私声明添加到 info.plist
文件。
下图是访问日历:
Privacy - Calendars Usage Description = "some text"
key
= Privacy - Calendars Usage Description
value
= "some Text"
iOS 10
延续了隐私政策并实施了新的隐私规则。我们应该记住在下一个项目中实施它们。
对于您的问题,您需要将以下行添加到 info.plist
<!-- Calendars -->
<key>NSCalendarsUsageDescription</key>
<string><Your description goes here></string>
以下是隐私规则的其余部分:
<!-- Photo Library -->
<key>NSPhotoLibraryUsageDescription</key>
<string><Your description goes here></string>
<!-- Camera -->
<key>NSCameraUsageDescription</key>
<string><Your description goes here></string>
<!-- Microphone -->
<key>NSMicrophoneUsageDescription</key>
<string><Your description goes here></string>
<!-- Location -->
<key>NSLocationUsageDescription</key>
<string><Your description goes here></string>
<!-- Location When In Use -->
<key>NSLocationWhenInUseUsageDescription</key>
<string><Your description goes here></string>
<!-- Location Always -->
<key>NSLocationAlwaysUsageDescription</key>
<string><Your description goes here></string>
<!-- Calendars -->
<key>NSCalendarsUsageDescription</key>
<string><Your description goes here></string>
<!-- ⏰ Reminders -->
<key>NSRemindersUsageDescription</key>
<string><Your description goes here></string>
<!-- Motion -->
<key>NSMotionUsageDescription</key>
<string><Your description goes here></string>
<!-- Health Update -->
<key>NSHealthUpdateUsageDescription</key>
<string><Your description goes here></string>
<!-- Health Share -->
<key>NSHealthShareUsageDescription</key>
<string><Your description goes here></string>
<!-- ᛒ Bluetooth Peripheral -->
<key>NSBluetoothPeripheralUsageDescription</key>
<string><Your description goes here></string>
<!-- Media Library -->
<key>NSAppleMusicUsageDescription</key>
<string><Your description goes here></string>
希望这对您有所帮助。 :)