crasowas / app_store_required_privacy_manifest_analyser

A shell script used to analyze privacy manifests in the specified directory to ensure that your app complies with the App Store requirements.
MIT License
165 stars 16 forks source link

Not swept to NSPrivacyAccessedAPICategorySystemBootTime #6

Open wscqs opened 7 months ago

wscqs commented 7 months ago

A surname

crasowas commented 7 months ago

Could you please provide further details? Testing with ios_example is working.

...
[7] NSPrivacyAccessedAPICategorySystemBootTime:systemUptime,mach_absolute_time():./App/APICategorySystemBootTime.swift
...
wscqs commented 7 months ago

来信已经收到。

wscqs commented 7 months ago

Is the project I scan (can't provide project), sure no NSPrivacyAccessedAPICategorySystemBootTime scan results.

Apple review feedback: ITMS-91053: Missing API declaration - Your app’s code in the “” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategorySystemBootTime.

crasowas commented 7 months ago

Please try scanning the application bundle (*.app) used for the App Store review, as the usage of this API may occur within statically linked libraries.

wscqs commented 7 months ago

scanning the application bundle (*.app). I tried that, too. The specific problem is unknown, you can wait to see if anyone has encountered it. It is really difficult to check (wait to see if anyone gives feedback).

crasowas commented 7 months ago

@wscqs You can now reanalyze your project, and the analyzer will provide API usage that may affect your app's privacy manifest.

wscqs commented 7 months ago

==================== Analyzing Target Directory ====================

💡 Found privacy manifest file(s): 1 [0] /Users/a1/Library/Developer/Xcode/DerivedData/chat-dcjxcjgnkqlvhudzkofprhghfmou/Build/Products/Debug-iphoneos/chat.app/PrivacyInfo.xcprivacy API usage analysis result(s): 3 [0] NSPrivacyAccessedAPICategoryFileTimestamp:stat,NSFileCreationDate,NSFileModificationDate,NSURLContentModificationDateKey,NSURLCreationDateKey:/Users/a1/Library/Developer/Xcode/DerivedData/chat-dcjxcjgnkqlvhudzkofprhghfmou/Build/Products/Debug-iphoneos/chat.app/chat [1] NSPrivacyAccessedAPICategoryDiskSpace:NSFileSystemFreeSize,NSFileSystemSize,NSURLVolumeAvailableCapacityKey,NSURLVolumeAvailableCapacityForImportantUsageKey,NSURLVolumeAvailableCapacityForOpportunisticUsageKey,NSURLVolumeTotalCapacityKey:/Users/a1/Library/Developer/Xcode/DerivedData/chat-dcjxcjgnkqlvhudzkofprhghfmou/Build/Products/Debug-iphoneos/chat.app/chat [2] NSPrivacyAccessedAPICategoryUserDefaults:NSUserDefaults:/Users/a1/Library/Developer/Xcode/DerivedData/chat-dcjxcjgnkqlvhudzkofprhghfmou/Build/Products/Debug-iphoneos/chat.app/chat ✅ All required API reasons have been described in the privacy manifest.

==================== Analysis completed! 💡: 1 ⚠️ : 0 🛠️ : 0 ✅: 1 🎯: 0 ====================

some: Not swept to NSPrivacyAccessedAPICategorySystemBootTime

crasowas commented 7 months ago

Please analyze your app's project directory and pay attention to the 🔔 at the end of the analysis results. For example:

🔔 If the directory you are analyzing is the app project directory, your app's privacy manifest may be affected by these analysis results: 20
[0] NSPrivacyAccessedAPICategoryFileTimestamp:.modificationDate:./Pods/DKImagePickerController/Sources/DKImagePickerController/DKImageAssetExporter.swift
[1] NSPrivacyAccessedAPICategoryFileTimestamp:NSURLContentModificationDateKey,NSURLCreationDateKey:./Pods/SDWebImage/SDWebImage/Core/SDDiskCache.m
[2] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults,NSUserDefaults:./.symlinks/plugins/shared_preferences_ios/ios/Classes/FLTSharedPreferencesPlugin.m
[3] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:./.symlinks/plugins/shared_preferences_ios/ios/Classes/messages.g.h
[4] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:./.symlinks/plugins/shared_preferences_ios/ios/Classes/messages.g.m
...

These non-dynamically linked libraries will affect your app's privacy manifest. See README for more details.

wscqs commented 7 months ago

==================== Analyzing Target Directory ====================

💡 Found privacy manifest file(s): 1 [0] /Users/a1/Library/Developer/Xcode/DerivedData/chat-dcjxcjgnkqlvhudzkofprhghfmou/Build/Products/Debug-iphoneos/chat.app/PrivacyInfo.xcprivacy API usage analysis result(s): 3 [0] NSPrivacyAccessedAPICategoryFileTimestamp:stat,NSFileCreationDate,NSFileModificationDate,NSURLContentModificationDateKey,NSURLCreationDateKey:/Users/a1/Library/Developer/Xcode/DerivedData/chat-dcjxcjgnkqlvhudzkofprhghfmou/Build/Products/Debug-iphoneos/chat.app/chat [1] NSPrivacyAccessedAPICategoryDiskSpace:NSFileSystemFreeSize,NSFileSystemSize,NSURLVolumeAvailableCapacityKey,NSURLVolumeAvailableCapacityForImportantUsageKey,NSURLVolumeAvailableCapacityForOpportunisticUsageKey,NSURLVolumeTotalCapacityKey:/Users/a1/Library/Developer/Xcode/DerivedData/chat-dcjxcjgnkqlvhudzkofprhghfmou/Build/Products/Debug-iphoneos/chat.app/chat [2] NSPrivacyAccessedAPICategoryUserDefaults:NSUserDefaults:/Users/a1/Library/Developer/Xcode/DerivedData/chat-dcjxcjgnkqlvhudzkofprhghfmou/Build/Products/Debug-iphoneos/chat.app/chat ✅ All required API reasons have been described in the privacy manifest.

==================== Analysis completed! 💡: 1 ⚠️ : 0 🛠️ : 0 ✅: 1 🎯: 0 ====================

⚠️ 🛠️ https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api 🎯 https://developer.apple.com/support/third-party-SDK-requirements

🔔 If the directory you are analyzing is the app project directory, your app's privacy manifest may be affected by these analysis results: 3 [0] NSPrivacyAccessedAPICategoryFileTimestamp:stat,NSFileCreationDate,NSFileModificationDate,NSURLContentModificationDateKey,NSURLCreationDateKey:/Users/a1/Library/Developer/Xcode/DerivedData/chat-dcjxcjgnkqlvhudzkofprhghfmou/Build/Products/Debug-iphoneos/chat.app/chat [1] NSPrivacyAccessedAPICategoryDiskSpace:NSFileSystemFreeSize,NSFileSystemSize,NSURLVolumeAvailableCapacityKey,NSURLVolumeAvailableCapacityForImportantUsageKey,NSURLVolumeAvailableCapacityForOpportunisticUsageKey,NSURLVolumeTotalCapacityKey:/Users/a1/Library/Developer/Xcode/DerivedData/chat-dcjxcjgnkqlvhudzkofprhghfmou/Build/Products/Debug-iphoneos/chat.app/chat [2] NSPrivacyAccessedAPICategoryUserDefaults:NSUserDefaults:/Users/a1/Library/Developer/Xcode/DerivedData/chat-dcjxcjgnkqlvhudzkofprhghfmou/Build/Products/Debug-iphoneos/chat.app/chat

🌟 If you found this script helpful, please consider giving it a star on GitHub. Your support is appreciated. Thank you! 🔗 Homepage: https://github.com/crasowas/app_store_required_privacy_manifest_analyser

crasowas commented 7 months ago

Not an application bundle (chat.app), please analyze your project directory.

wscqs commented 7 months ago

==================== Analyzing Target Directory ====================

💡 Found privacy manifest file(s): 1 [0] /Users/a1/Documents/chat/chat/PrivacyInfo.xcprivacy API usage analysis result(s): 10 [0] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:/Users/a1/Documents/chat/chat/ChatOptionsPage.swift [1] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:/Users/a1/Documents/chat/chat/ChatPageVM.swift [2] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:/Users/a1/Documents/chat/chat/Classes/Common/BaseAPI.swift [3] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults,AppStorage:/Users/a1/Documents/chat/chat/Classes/Model/AIUserAccount.swift [4] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:/Users/a1/Documents/chat/chat/Classes/Module/Other/EnvironmentPage.swift [5] NSPrivacyAccessedAPICategoryUserDefaults:AppStorage:/Users/a1/Documents/chat/chat/Classes/Module/User/PrivacyPolicyPage.swift [6] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:/Users/a1/Documents/chat/chat/Classes/Service/AIService.swift [7] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:/Users/a1/Documents/chat/chat/Classes/Utils/MBAInfo.swift [8] NSPrivacyAccessedAPICategoryUserDefaults:AppStorage:/Users/a1/Documents/chat/chat/Classes/chatApp.swift [9] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:/Users/a1/Documents/chat/chat/HomeHomePageVM.swift ✅ All required API reasons have been described in the privacy manifest.

==================== Analyzing Pods Directory ====================

Analyzing UMCommon ... ⚠️ Missing privacy manifest file! API usage analysis result(s): 2 [0] NSPrivacyAccessedAPICategoryDiskSpace:NSFileSystemFreeSize,NSFileSystemSize:/Users/a1/Documents/chat/Pods/UMCommon/UMCommon_7.3.9/UMCommon.framework/UMCommon [1] NSPrivacyAccessedAPICategoryUserDefaults:NSUserDefaults:/Users/a1/Documents/chat/Pods/UMCommon/UMCommon_7.3.9/UMCommon.framework/UMCommon 🛠️ Descriptions for the following required API reason(s) may be missing: 2 [0] NSPrivacyAccessedAPICategoryDiskSpace [1] NSPrivacyAccessedAPICategoryUserDefaults

Analyzing UMDevice ... ⚠️ Missing privacy manifest file! API usage analysis result(s): 2 [0] NSPrivacyAccessedAPICategoryFileTimestamp:stat,NSFileCreationDate:/Users/a1/Documents/chat/Pods/UMDevice/UMDevice_3.1.0/UMDevice.framework/UMDevice [1] NSPrivacyAccessedAPICategoryUserDefaults:NSUserDefaults:/Users/a1/Documents/chat/Pods/UMDevice/UMDevice_3.1.0/UMDevice.framework/UMDevice 🛠️ Descriptions for the following required API reason(s) may be missing: 2 [0] NSPrivacyAccessedAPICategoryFileTimestamp [1] NSPrivacyAccessedAPICategoryUserDefaults

==================== Analysis completed! 💡: 1 ⚠️ : 2 🛠️ : 2 ✅: 1 🎯: 0 ====================

⚠️ 🛠️ https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api 🎯 https://developer.apple.com/support/third-party-SDK-requirements

🔔 If the directory you are analyzing is the app project directory, your app's privacy manifest may be affected by these analysis results: 14 [0] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:/Users/a1/Documents/chat/chat/ChatOptionsPage.swift [1] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:/Users/a1/Documents/chat/chat/ChatPageVM.swift [2] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:/Users/a1/Documents/chat/chat/Classes/Common/BaseAPI.swift [3] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults,AppStorage:/Users/a1/Documents/chat/chat/Classes/Model/AIUserAccount.swift [4] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:/Users/a1/Documents/chat/chat/Classes/Module/Other/EnvironmentPage.swift [5] NSPrivacyAccessedAPICategoryUserDefaults:AppStorage:/Users/a1/Documents/chat/chat/Classes/Module/User/PrivacyPolicyPage.swift [6] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:/Users/a1/Documents/chat/chat/Classes/Service/AIService.swift [7] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:/Users/a1/Documents/chat/chat/Classes/Utils/MBAInfo.swift [8] NSPrivacyAccessedAPICategoryUserDefaults:AppStorage:/Users/a1/Documents/chat/chat/Classes/chatApp.swift [9] NSPrivacyAccessedAPICategoryUserDefaults:UserDefaults:/Users/a1/Documents/chat/chat/HomeHomePageVM.swift [10] NSPrivacyAccessedAPICategoryDiskSpace:NSFileSystemFreeSize,NSFileSystemSize:/Users/a1/Documents/chat/Pods/UMCommon/UMCommon_7.3.9/UMCommon.framework/UMCommon [11] NSPrivacyAccessedAPICategoryUserDefaults:NSUserDefaults:/Users/a1/Documents/chat/Pods/UMCommon/UMCommon_7.3.9/UMCommon.framework/UMCommon [12] NSPrivacyAccessedAPICategoryFileTimestamp:stat,NSFileCreationDate:/Users/a1/Documents/chat/Pods/UMDevice/UMDevice_3.1.0/UMDevice.framework/UMDevice [13] NSPrivacyAccessedAPICategoryUserDefaults:NSUserDefaults:/Users/a1/Documents/chat/Pods/UMDevice/UMDevice_3.1.0/UMDevice.framework/UMDevice

🌟 If you found this script helpful, please consider giving it a star on GitHub. Your support is appreciated. Thank you! 🔗 Homepage: https://github.com/crasowas/app_store_required_privacy_manifest_analyser

some: Not swept to NSPrivacyAccessedAPICategorySystemBootTime

crasowas commented 7 months ago

Is this analysis of the project you used to submit for App Store review?

wscqs commented 7 months ago

right。 then: Apple review feedback: ITMS-91053: Missing API declaration - Your app’s code in the “” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategorySystemBootTime.

So it's not easy to check, and wait to see if anyone continues to give feedback. I guess the reason should be with the appstore review of some function scripts did not cover it.