什么是“应用程序的Info.plist必须包含NSPhotoLibraryAddUsageDescription”的崩溃?
我遇到下面的错误(iOS版11):什么是“应用程序的Info.plist必须包含NSPhotoLibraryAddUsageDescription”的崩溃?
这个应用程序崩溃,因为它试图在没有一个使用说明来访问隐私敏感 数据。该应用程序的Info.plist必须包含 和
NSPhotoLibraryAddUsageDescription
键,字符串值为 向用户解释应用程序如何使用此数据。
注意的是,虽然应用的info.plist不包含NSPhotoLibraryUsageDescription
它仍然崩溃,为什么呢?
请注意,虽然应用程序info.plist包含
NSPhotoLibraryUsageDescription
它仍然崩溃,为什么?
我认为这是一个误区比较NSPhotoLibraryUsageDescription
和NSPhotoLibraryAddUsageDescription
时,作为记录在Information Property List Key Reference:
NSPhotoLibraryUsageDescription:
此键可以让你描述你的应用程序访问用户 的原因照片库。当系统提示用户允许访问时,此 字符串将显示为警报的一部分。
它与让应用程序能够访问(获取)设备照片库有关。
NSPhotoLibraryAddUsageDescription:
此键可以让你描述你的应用程序试图只写访问 到用户的照片库的原因。当系统提示用户允许 访问时,该字符串将显示为警报的一部分。
它关系到让应用能够写(添加)照片到设备的照片库。
显然,要解决这个崩溃,你必须在NSPhotoLibraryAddUsageDescription
添加到应用程序的plist文件:
<key>NSPhotoLibraryAddUsageDescription</key>
<string>Our application needs permission to write photos...</string>
为属性列表视图:
“NSPhotoLibraryUsageDescription”的Apple文档具体声明它既可以读写,也可以写入:“虽然这个键管理用户照片库的读写权限**,但如果您的应用程序只需要将资源添加到库中,并且无需使用NSPhotoLibraryAddUsageDescription,则最好使用NSPhotoLibraryAddUsageDescription读取任何资产“。我不知道这是否仅仅是文档中的错误,或者Apple是否有意将”NSPhotoLibraryUsageDescription“的行为更改为b e只读。 – Cutterpillow
@Cutterpillow我认为你的第二个假设是正确的。 –
你为什么问问题然后如果你知道答案? –
@VarunNaharia,因为我认为它可能对面临这次崩溃的任何人都有用。 https://meta.stackoverflow.com/questions/314165/how-to-ask-and-self-answer-a-correct-high-quality-qa-pair-without-attracting-d它是合法的:) –
有在那里你可以回答https:// stackoverflow。com/questions/46566972/request-nsphotolibraryaddusagedescription-permission https://stackoverflow.com/questions/46344159/whats-difference-between-nsphotolibraryaddusagedescription-and-nsphotolibraryus –