Comments (53)
That would be up to you to decide; we don't have any more information than you do here, so we can't offer specific advice.
Many thanks to you and the whole Flutter team for everything. Y'all are very helpful!
I definitely understand, but ultimately there's only so much the Flutter team can do here:
I sent Apple developer support a message with some details now. Hopefully, they can help with it. I will update here if I find a plausible solution.
from flutter.
Hi there. I am working on a project that is really behind on dependencies, latest versions, and even the Flutter sdk version itself. We are on Flutter v3.7.9. We can't update the dependencies to the latest versions at all before updating Flutter. Is updating everything our only option?
These are the warnings I received:
ITMS-91053: Missing API declaration - Your app’s code in the “Runner” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategorySystemBootTime. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91053: Missing API declaration - Your app’s code in the “Runner” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryFileTimestamp. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91053: Missing API declaration - Your app’s code in the “Runner” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryUserDefaults. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91053: Missing API declaration - Your app’s code in the “Runner” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryDiskSpace. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
from flutter.
Thanks @taufiq-husain, we're digging into that particular pile of plugins now.
Copied from #131940 (comment) in case folks are following this issue and not that one:
Flutter itself has a compliant privacy manifest (as far as we are aware). If you're seeing ITMS-91053: Missing API declaration - Your app’s code in the “Runner” file
it could mean:
- You are using a static plugin (podspec contains
s.static_framework = true
) that has declared a privacy manifest, but you're on an older version of that package and you should update. - You are using a static plugin that has not declared a privacy manifest, or has an incomplete privacy manifest. We'd really like to know exactly which plugin that is, and reach out (or you as their customer reach out) and get them to add one.
- Much more concerning, the static plugin is declaring a privacy manifest, but there's something we're missing about how Apple is enforcing this requirement.
If you're seeing this, before you add any workarounds you read only, we'd really like help tracking this down for everyone so no one (except plugin authors in case 2 above) need to do anything manually.
Please attach:
- The exact
ITMS-91053
warning message(s) pubspec.yaml
andpubspec.lock
ios/Podfile
- Confirm whether or not you have added any native code directly to your Runner? (E.g., modified the Swift or Objective-C code in the
ios/
directory yourself.) - If you're willing, your actual built
.ipa
or.xcarchive
file so we can look at the file structure of your plugins.
Thank you so much!
from flutter.
Is there a way to encourage ALL package developers to address them ASAP?
I would encourage anyone affected by a package's lack of privacy manifest support to reach out individually to the author of that package. We've done outreach where we are aware of it, but we don't have a way to find every potentially affected plugin. Apple has also done some outreach, but static frameworks prevent them from finding the source in an automated fashion.
from flutter.
I received a "Missing API declaration" warning email on my new release on the app store. I never received before this warning in an email.
In the latest version app store build, I did custom coding for Google Analytics consent and made changes in the "Swift" file accordingly.
is that the reason? How I can fix this?
- NSPrivacyAccessedAPICategoryDiskSpace
- NSPrivacyAccessedAPICategorySystemBootTime
- NSPrivacyAccessedAPICategoryFileTimestamp
- NSPrivacyAccessedAPICategoryUserDefaults
While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a {{"NSPrivacyAccessedAPITypes"}} array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code.
from flutter.
Steps:
-
Create PrivacyInfo.xcprivacy File.
Xcode Menu:
File -> File (Create New File with App Privacy Template)
Click on Next And select your Runner Workspace. -
Add privacy Configuration in PrivacyInfo.xcprivacy
Example for Privacy Nutrition Label Types:
1. Privacy Accessed API Type Privacy Nutrition Label Types For Location like If your Application using Precise Location,
2. select Collected Data Type : Precise Location
3. Linked to User : YES/ NO
4. Used for Tracking : YES/NO
5. Add Collection Purposes for Application
Example for Privacy Accessed API Types:
1. Add Privacy Accessed API Types For Disk Space If your Application using application directory or file storage to store file,
2. Privacy Accessed API Type : Disk Space
3. Add Privacy Accessed API Reasons (Add Reason For Use)
PrivacyInfo.xcprivacy
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSPrivacyCollectedDataTypes</key>
<array>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypePreciseLocation</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<true/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
<string>NSPrivacyCollectedDataTypePurposeProductPersonalization</string>
</array>
</dict>
</array>
<key>NSPrivacyAccessedAPITypes</key>
<array>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryDiskSpace</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>54BD.1</string>
</array>
</dict>
</array>
</dict>
</plist>
For More Information : https://developer.apple.com/videos/play/wwdc2023/10060
It's work's for me you can try it and let me know
from flutter.
If I ask apple developer support about it, what should I say specifically?
That would be up to you to decide; we don't have any more information than you do here, so we can't offer specific advice.
I'm worried I won't be able to update my app after May 1st
I definitely understand, but ultimately there's only so much the Flutter team can do here:
- We don't control the enforcement, so we don't know how exactly the scanner works.
- We don't control the communication, so we don't have any more information than what you have (whereas Apple would know the exact symbol(s) that it has found).
- We don't control the code that's being linked directly into an app; that's a function of any native code the app developer may have written, and the dependencies they've chosen to add to their application. Third-party dependencies can have arbitrary code, and arbitrary sub-dependencies, both source and binary.
We're working on doing what we can to gather information and document findings and suggestions, but since this set of issues isn't inherently specific to Flutter (any app with third-party dependencies can have this problem, and there are non-Flutter-developers making scripts/tools to try to find Required Reason APIs in third-party dependencies), we are operating from the same set of information as everyone else.
from flutter.
@renenucci Please see #145269 (comment). We need all of those files to be able to investigate specific cases.
if you can explain how to determine wich one is the "guilty", would be great
I've updated this comment with more information about how to investigate. There are edge cases that it won't find (like the facebook_app_events
case), but it will cover many common cases.
from flutter.
#131940 would probably be a better issue to follow specifically for discussion of documentation around this issue.
from flutter.
@stuartmorgan, @darshankawar i have solved this issue and my app now approved by app store. below are steps to fix this issue
- open ios directory into xcode
- select runner -> right click-> new file -> search "AppPrivacy"
- select AppPrivacy and click -> Next
- select all available targets then click -> create
- [Edit by Flutter team: see the warning in this comment]
now open this file into any text editor and past below code into this file
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<!--
PrivacyInfo.xcprivacy
Runner
Created by Rajesh Dabhi on 20/03/24.
Copyright (c) 2024 . All rights reserved.
-->
<plist version="1.0">
<dict>
<key>NSPrivacyTracking</key>
<false/>
<key>NSPrivacyAccessedAPITypes</key>
<array>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryDiskSpace</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>E174.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>1C8F.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryFileTimestamp</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>C617.1</string>
<string>0A2A.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategorySystemBootTime</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>8FFB.1</string>
</array>
</dict>
</array>
</dict>
</plist>
from flutter.
Below are the results so far from my investigation of what @taufiq-husain provided (specifically, I flutter create
d a project and added everything from the pubspec
list here; that's not going to be identical to the real project, but it appears to reproduce build output that matches the Apple warnings):
ITMS-91053: Missing API declaration - Your app’s code in the “Runner” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryFileTimestamp.
I haven't figured out what is tripping this yet. A few dependencies use APIs in this category, but none that I have found so far that are built statically and thus would be part of Runner. nm
does show a NSFileModificationDate
reference in Runner
, so I'll continue to investigate.
Your app’s code in the “Runner” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryUserDefaults.
permission_handler_apple
has code using NSUserDefaults
, and sets static_framework = true
, so causes NSUserDefaults code to be in Runner
. The plugin is currently not declaring that, so this could be either case 2 or case 3 at this point.
ITMS-91053: Missing API declaration - Your app’s code in the “Runner” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategorySystemBootTime.
I see no uses of systemUptime
, and only two calls to mach_absolute_time
, in the project. Both mach_absolute_time
calls are in things bundled as frameworks. However, nm
does show a mach_absolute_time
reference in Runner
, so I'll continue to investigate.
(I've verified that a simple flutter create
flutter build ios
does not result in a Runner
with those same symbol references in the binary, so it's not inherent to Flutter.)
from flutter.
Just to clarify:
We don't have to add the privacy manifest in the Flutter app. It has to be done by third party SDK, right?
It is confusing because almost all places saying to add the privacy manifest. For e.g see this SO https://stackoverflow.com/questions/78163859/itms-91053-missing-api-declaration-privacy
We have the following code in the AppDelegate.swift
import UIKit
import Flutter
@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {
override func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
GeneratedPluginRegistrant.register(with: self)
if #available(iOS 10.0, *) {
UNUserNotificationCenter.current().delegate = self as? UNUserNotificationCenterDelegate
}
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
}
}
from flutter.
In fact, FBAudienceNetwork
is enough to cause all three of these warnings just by itself. They have published an updated version of that static framework (6.15) with a privacy manifest, and it includes NSPrivacyAccessedAPICategoryUserDefaults
, NSPrivacyAccessedAPICategorySystemBootTime
, and NSPrivacyAccessedAPICategoryFileTimestamp
.
Hopefully once oddbit/flutter_facebook_app_events#342 is fixed, that static framework's privacy manifest will be incorporated automatically into the build, but we don't currently know how that is handled by Xcode.
from flutter.
@realDiegoR If you aren't using versions of your dependencies that support privacy manifests, you would need to audit them all yourself and make custom versions that include all the necessary privacy manifest declarations. That's out of the scope of what the documentation this issue tracks would cover.
from flutter.
I got the same email from apple for
NSPrivacyAccessedAPICategoryFileTimestamp
NSPrivacyAccessedAPICategoryDiskSpace
NSPrivacyAccessedAPICategorySystemBootTime
NSPrivacyAccessedAPICategoryUserDefaults
Any way to check what dependencies are causing these? Possibly something like datadog_flutter_plugin
.
I couldn't find anything in the build logs.
from flutter.
Any way to check what dependencies are causing these?
Assuming the warnings list "Runner"
as the problem (if not it should be easy, since whatever the name of the framework it lists is the problem in that case), this issue tracks creating documentation for doing that. In the meantime this comment is essentially an early, minimal version of some of what those docs will say.
What's described there will only work if your dependencies all have any necessary privacy manifests. Finding issues caused by statically linked dependencies that are missing required privacy manifests is much harder, and we don't have docs for that yet. It's something we'll be working on very soon. (For those with a fair amount of iOS development experience: you need to audit the source of all source dependencies, and the binaries—using nm
—of all pre-built dependencies, for each Required Reason API in the flagged categories.)
from flutter.
Friendly reminder to read #145269 (comment) before posting here.
from flutter.
Same happened to our project
from flutter.
any solution ?
from flutter.
Seems like this solution works
from flutter.
Same here, it seems like the solution is not working. i even removed the new packages that i added to see if that's the problem (sign_in_with_apple) unfortunately it wasn't the case. I'm using normal flutter not flutterFlow.
from flutter.
I believe this is being tracked in #143232 in which you can follow-up for further updates.
Closing this in favor of it.
from flutter.
I was getting similar warnings after my upload. Seems there is still quite some time to resolve it (before May 1, 2024). I added the following keys to my Info.plist, based on [https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api](url)
<key>NSPrivacyAccessedAPITypes</key>
<array>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryFileTimestamp</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>C617.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>CA92.1</string>
<string>1C8F.1</string>
</array>
</dict>
</array>
from flutter.
I was getting similar warnings after my upload. Seems there is still quite some time to resolve it (before May 1, 2024). I added the following keys to my Info.plist, based on [https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api](url)
<key>NSPrivacyAccessedAPITypes</key> <array> <dict> <key>NSPrivacyAccessedAPIType</key> <string>NSPrivacyAccessedAPICategoryFileTimestamp</string> <key>NSPrivacyAccessedAPITypeReasons</key> <array> <string>C617.1</string> </array> </dict> <dict> <key>NSPrivacyAccessedAPIType</key> <string>NSPrivacyAccessedAPICategoryUserDefaults</string> <key>NSPrivacyAccessedAPITypeReasons</key> <array> <string>CA92.1</string> <string>1C8F.1</string> </array> </dict> </array>
this is also not working for me i have also followed this. but this is also not helpful for me still getting app rejection with Missing API declaration
from flutter.
I would encourage anyone following this issue to read #131940 (comment), particularly the warning there.
I will be hiding any comments I encounter in the Flutter issue tracker that tell people to add arbitrary contents to a privacy manifest.
from flutter.
Reopening this to gather more information. @taufiq-husain @rajeshbdabhi @Mounix99 @salim97, can you attach the following info:
pubspec.lock
ios/Podfile
Thanks!
from flutter.
My Podfile:
Podfile.txt
My pubspec.lock file:
pubspec-lock.txt
I should add a note that most people will likely search for this issue by searching for "ITMS-91053" + "Flutter/iOS" so it's a good idea to keep this thread updated. I actually wanted the Flutter team to add some documentation officially (if possible) so people would know how to do it the right way for their Flutter iOS Projects.
from flutter.
That Podfile does have use_frameworks!
so something in there is being built statically or it wouldn't say Your app’s code in the “Runner” file
(unless Apple's warning isn't splitting out into framework names as we hoped). I want to dig into whether that static lib has a privacy manifest resource.
@taufiq-husain can you also attach your pubspec.yaml dependencies list? I don't want to recreate it from that large lock file. 🙂
from flutter.
@taufiq-husain Also, could you confirm whether or not you have added any native code directly to your Runner? (E.g., modified the Swift or Objective-C code in the ios/
directory yourself.)
from flutter.
Anyone solved it?
from flutter.
@jmagman these are my dependencies:
pubspec.yaml
dependencies:
animated_emoji: ^3.1.0
animated_text_kit: ^4.2.2
audio_session: ^0.1.18
auto_size_text: ^3.0.0
cached_network_image: ^3.3.1
cloud_firestore: ^4.15.8
cloud_functions: ^4.6.8
crypto: ^3.0.3
facebook_app_events: ^0.19.0
firebase_analytics: ^10.8.9
firebase_auth: ^4.17.8
firebase_core: ^2.27.0
firebase_crashlytics: ^3.4.18
firebase_storage: ^11.6.9
flutter_native_splash: ^2.3.10
flutter:
sdk: flutter
flutter_branch_sdk: ^7.1.0
flutter_easyloading: ^3.0.5
flutter_local_notifications: ^17.0.0
get: ^4.6.6
google_fonts: ^6.2.1
google_sign_in: ^6.2.1
http: ^1.2.0
image_cropper: ^5.0.1
image_picker: ^1.0.7
in_app_review: ^2.0.8
intl: ^0.19.0
just_audio: ^0.9.36
mutex: ^3.1.0
path_provider: ^2.1.2
permission_handler: ^11.3.0
purchases_flutter: ^6.23.0
record: ^5.0.4
share_plus: ^7.2.2
shared_preferences: ^2.2.2
simple_ripple_animation: ^0.0.9
timezone: ^0.9.2
toastification: ^1.2.1
url_launcher: ^6.2.5
video_player: ^2.8.3
wakelock_plus: ^1.1.4
dev_dependencies:
flutter_lints: ^3.0.0
# flutter_native_splash: ^2.3.13
# dependency_validator: ^3.0.0
# flutter_app_name: ^0.1.0
# flutter_launcher_icons: ^0.13.1
# flutter_test:
# sdk: flutter
I have only made changes in the Info.plist file to accommodate Branch.io quick-links (referral system), Facebook Analytics (to check when users sign up from Facebook Ads), Google Sign-in configurations, and various other iOS-specific configurations (not external API related).
I have also made very basic changes in the AppDelegate.swift file:
AppDelegate.swift
import UIKit
import Flutter
import FirebaseCore
import flutter_local_notifications
@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {
override func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
// This is required to make any communication available in the action isolate.
FlutterLocalNotificationsPlugin.setPluginRegistrantCallback { (registry) in
GeneratedPluginRegistrant.register(with: registry)
}
if #available(iOS 10.0, *) {
UNUserNotificationCenter.current().delegate = self as UNUserNotificationCenterDelegate
}
FirebaseApp.configure()
GeneratedPluginRegistrant.register(with: self)
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
}
}
from flutter.
@rajeshbdabhi Please read this comment.
from flutter.
So this issue is arising specifically from third-party packages on Flutter? Is there a way to encourage ALL package developers to address them ASAP? May 1st is Apple's deadline.
from flutter.
Just to clarify:
We don't have to add the privacy manifest in the Flutter app. It has to be done by third party SDK, right?
- For SDKs which are bundled as frameworks in the final application, that is our current understanding based on the docs.
- For SDKs which are built statically into applications, we are still gathering information about how the enforcement is currently working in order to attempt to clarify that with Apple.
I currently believe that the initial reporter's warning messages fall under case 2, based on the wording and my investigation so far. That is not going to be the case for every application. Each case is potentially different.
from flutter.
Here are the dependencies used in our project:
pubspec.yaml
``` dependencies: flutter: sdk: flutter flutter_localizations: sdk: flutter intl: flutter_keyboard_visibility: 5.4.1 provider: 6.1.1 url_launcher: 6.2.4 bot_toast: 4.1.3 visibility_detector: 0.4.0+2 flutter_svg: 2.0.9 firebase_core: 2.27.0 firebase_auth: 4.17.8 firebase_analytics: 10.8.9 firebase_crashlytics: 3.4.18 #web support pending firebase_database: 10.4.9 firebase_storage: 11.6.9 firebase_dynamic_links: 5.4.17 #web support pending firebase_messaging: 14.7.19 firebase_in_app_messaging: 0.7.4+17 #web support pending firebase_remote_config: 4.3.17 cloud_firestore: 4.15.8 cloud_functions: 4.6.8 flutter_switch: 0.3.2 shared_preferences: 2.2.2 json_annotation: 4.8.1 collection: 1.18.0 image_picker: 1.0.7 image_cropper: 5.0.0 cached_network_image: 3.3.1 flutter_cache_manager: 3.3.1 diacritic: 0.1.5 flutter_sticky_header: 0.6.3 intercom_flutter: 8.1.1 device_info_plus: 9.1.2 crypto: 3.0.3 encrypt: 5.0.1 numberpicker: 2.1.2 pdf: 3.10.4 printing: 5.11.0 image: 4.1.6 flutter_signature_pad: 3.0.1 share_plus: 7.2.2 async: 2.11.0 connectivity_plus: 5.0.2 auto_size_text: 3.0.0 charts_flutter: 0.12.0 styled_text: 7.0.0 flutter_udid: 2.0.1 #no web support, used fingerprintjs for web fingerprintjs: 2.0.0 #only for web flutter_local_notifications: 16.3.2 #web support pending search_cep: 4.0.2 permission_handler: 11.2.0 #no web functionality flutter_contact: 0.9.1+8 #no web functionality hive: 2.2.3 hive_flutter: 1.1.0 sliver_tools: 0.2.12 in_app_purchase: 3.1.13 scroll_to_index: 3.0.1 xml: 6.5.0 youtube_player_iframe: 4.0.4 url_strategy: 0.2.0 flutter_multi_formatter: 2.11.1 credit_card_validator: 2.1.0 package_info_plus: 5.0.1 http: 1.0.0 smooth_page_indicator: 1.1.0 mobile_scanner: 3.0.0-beta.1 file_picker: 6.1.1 in_app_review: 2.0.8 rxdart: 0.27.7 sqflite: 2.3.2 path_provider: 2.1.2 flutter_spinkit: 5.2.0 flutter_rating_bar: 4.0.1 ripple_navigation: git: url: https://github.com/agendaboa/ripple_navigation ref: agendaboa_adjustments open_mail_app: 0.4.5 #no web functionality webview_flutter: 4.4.4 web: '>=0.3.0 <0.6.0' facebook_app_events: git: url: https://github.com/oddbit/flutter_facebook_app_events ref: e09af327fd36d21e423ebb54f17944fb10065416The following adds the Cupertino Icons font to your application.
Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^1.0.0
</details>
from flutter.
ITMS-91053: Missing API declaration - Your app’s code in the “Runner” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryFileTimestamp.
I haven't figured out what is tripping this yet. A few dependencies use APIs in this category, but none that I have found so far that are built statically and thus would be part of Runner.
nm
does show aNSFileModificationDate
reference inRunner
, so I'll continue to investigate.
I'm pretty sure I found the source of this one: facebook_app_events
is a static_framework
which includes a dependency on the FBAudienceNetwork
Pod, which in turn has "vendored_frameworks": "Static/FBAudienceNetwork.xcframework"
. That precompiled framework has a reference to NSFileModificationDate
.
from flutter.
@deepak-agendaboa What are the specific ITMS-91053
messages for your project?
from flutter.
ITMS-91053: Missing API declaration - Your app’s code in the “Agenda BOA” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategorySystemBootTime. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91053: Missing API declaration - Your app’s code in the “Agenda BOA” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryFileTimestamp. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91053: Missing API declaration - Your app’s code in the “Agenda BOA” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryDiskSpace. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91053: Missing API declaration - Your app’s code in the “Agenda BOA” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryUserDefaults. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
from flutter.
@stuartmorgan you're right! Great investigative work. It's definitely that package because we weren't using it before and never got the privacy manifest email before either.
As an aside note, does anyone else know of any other frequently updated Flutter package to track Facebook App Events? This package hasn't been updated in a while it seems so I doubt they'll do it. I don't know how else to track Facebook ads conversions on Flutter... 😭
from flutter.
@deepak-agendaboa The pubspec you provided has a number of version conflicts, and is not resolvable. We can't investigate further without a reproducible case—although we already know that facebook_app_events
is at least one source of three of your four warnings. (I would encourage you to look into pubspec.lock, rather than pinning everything exactly in your pubspec.yaml.)
from flutter.
I am also facing same problem, waiting for convenient solution or closing of this issue
from flutter.
idea fixed this issue: It's important to Add Target.
Not working for me...
![image](https://private-user-images.githubusercontent.com/20646071/317620818-e9ababaa-6719-4c45-be00-79ae1e4ecc57.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MTM2NDc0ODQsIm5iZiI6MTcxMzY0NzE4NCwicGF0aCI6Ii8yMDY0NjA3MS8zMTc2MjA4MTgtZTlhYmFiYWEtNjcxOS00YzQ1LWJlMDAtNzlhZTFlNGVjYzU3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA0MjAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNDIwVDIxMDYyNFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTdmYjEzZTQ0YzJjMjU2ODY3MGVmYWUzM2FjNzZkOWIxOWZhZDcyMjY1MDIxNDZmNjM5NGU1Njk3MjE0ZDNlMTcmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.3QSPxiOPPtrNx6LGkN-R1AAYlqNevtMeSMK85mY46oI)
Last email from Apple
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Runner” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftObjectiveC.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftMetal.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreFoundation.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreAudio.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftDispatch.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCore.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreLocation.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftQuartzCore.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreImage.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftUIKit.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreMedia.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreGraphics.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftDarwin.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftos.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftIntents.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftFoundation.dylib” file contains “FileTimestamp” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Runner” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftObjectiveC.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftMetal.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreFoundation.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreAudio.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftDispatch.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCore.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreLocation.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftQuartzCore.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreImage.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftUIKit.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreMedia.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreGraphics.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftDarwin.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftos.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftIntents.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftFoundation.dylib” file contains “DiskSpace” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Runner” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftObjectiveC.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftMetal.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreFoundation.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreAudio.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftDispatch.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCore.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreLocation.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftQuartzCore.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreImage.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftUIKit.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreMedia.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftCoreGraphics.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftDarwin.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftos.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftIntents.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “Frameworks/libswiftFoundation.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91054: Invalid API category declaration - The PrivacyInfo.xcprivacy for the “PlugIns/FlutterWidgetVisitExtension.appex/FlutterWidgetVisitExtension” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, values for NSPrivacyAccessedAPIType keys in your app’s privacy manifest must be valid API categories. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91053: Missing API declaration - Your app’s code in the “Runner” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryDiskSpace. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91053: Missing API declaration - Your app’s code in the “Runner” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryFileTimestamp. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91053: Missing API declaration - Your app’s code in the “Runner” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryUserDefaults. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
ITMS-91053: Missing API declaration - Your app’s code in the “PlugIns/FlutterWidgetVisitExtension.appex/FlutterWidgetVisitExtension” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryUserDefaults. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
Apple Developer Relations
from flutter.
@ziqq You should report that list of errors to Apple, as it looks like a bug in the App Store checks. (E.g., it's flagging all of the declarations of Apple's own frameworks.)
from flutter.
“PlugIns/FlutterWidgetVisitExtension.appex/FlutterWidgetVisitExtension” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid.
Ignoring the Swift runtime libraries, this looks like an extension you maybe added, and the manifest file itself you added has an invalid value. Please read the warnings carefully. The ones that are tricky to track down are the static plugins that may show up as "Your app’s code in the “Runner” file references".
from flutter.
Ignoring the Swift runtime libraries, this looks like an extension you maybe added, and the manifest file itself you added has an invalid value.
Not necessarily, since the same warning is showing up for Swift runtime libraries. E.g.,
The PrivacyInfo.xcprivacy for the “Frameworks/libswiftDarwin.dylib” file contains “UserDefaults” as the value for a NSPrivacyAccessedAPIType key, which is invalid.
Unless those strings are literally what's in the privacy manifests (in which case something post-processed that app and stripped the NSPrivacyAccessedAPICategory
prefix from every value in the entire bundle, rendering everything invalid), the check was just flagging everything as invalid.
from flutter.
Hey @stuartmorgan I removed the facebook app events package and resubmitted to AppStore today. I am still getting this error:
ITMS-91053: Missing API declaration - Your app’s code in the “Runner” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryFileTimestamp. While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, you must include a NSPrivacyAccessedAPITypes array in your app’s privacy manifest to provide approved reasons for these APIs used by your app’s code. For more details about this policy, including a list of required reason APIs and approved reasons for usage, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api.
Note that my packages for the same are now just these (everything the same with facebook_app_events removed):
pubspec.yaml
dependencies:
animated_emoji: ^3.1.0
animated_text_kit: ^4.2.2
audio_session: ^0.1.18
auto_size_text: ^3.0.0
cached_network_image: ^3.3.1
cloud_firestore: ^4.15.10
cloud_functions: ^4.6.10
crypto: ^3.0.3
firebase_analytics: ^10.9.0
firebase_auth: ^4.18.0
firebase_core: ^2.27.2
firebase_crashlytics: ^3.4.20
firebase_storage: ^11.6.11
flutter:
sdk: flutter
flutter_branch_sdk: ^7.1.0
flutter_easyloading: ^3.0.5
flutter_local_notifications: ^17.0.0
flutter_native_splash: ^2.4.0
get: ^4.6.6
google_fonts: ^6.2.1
google_sign_in: ^6.2.1
http: ^1.2.1
image_cropper: ^5.0.1
image_picker: ^1.0.7
in_app_review: ^2.0.9
intl: ^0.19.0
just_audio: ^0.9.36
mutex: ^3.1.0
path_provider: ^2.1.2
permission_handler: ^11.3.0
purchases_flutter: ^6.24.0
record: ^5.0.5
share_plus: ^8.0.2
shared_preferences: ^2.2.2
simple_ripple_animation: ^0.0.9
timezone: ^0.9.2
toastification: ^1.2.1
url_launcher: ^6.2.5
video_player: ^2.8.3
wakelock_plus: ^1.1.4
dev_dependencies:
flutter_lints: ^3.0.0
# flutter_native_splash: ^2.3.13
# dependency_validator: ^3.0.0
# flutter_app_name: ^0.1.0
# flutter_launcher_icons: ^0.13.1
# flutter_test:
# sdk: flutter
from flutter.
@taufiq-husain What do the following two commands print when run in your project directory?
nm build/ios/Release-iphoneos/Runner.app/Runner | grep mach_absolute_time
nm build/ios/Release-iphoneos/Runner.app/Runner | grep systemUptime
If I make a new project and add that dependency list, I don't get any hits for either of those commands, so it doesn't look like I can reproduce it. Several dependencies in that list do use mach_absolute_time
, but they should build as frameworks.
from flutter.
@taufiq-husain What do the following two commands print when run in your project directory?
nm build/ios/Release-iphoneos/Runner.app/Runner | grep mach_absolute_time nm build/ios/Release-iphoneos/Runner.app/Runner | grep systemUptime
If I make a new project and add that dependency list, I don't get any hits for either of those commands, so it doesn't look like I can reproduce it. Several dependencies in that list do use
mach_absolute_time
, but they should build as frameworks.
I tried it at first but it was saying files don't exist. I did flutter run --release
on a real device then tried your commands again and this time no error nor anything was printed. Does this mean the issue was resolved for next time? How come I got the email from Apple then?
Perhaps something was lingering from past builds? I don't know because I did flutter clean; flutter pub get; flutter build ipa --release
then used Transporter to upload the app build to App Store.
from flutter.
Sorry, I apparently read the category from the wrong comment there; the commands for NSPrivacyAccessedAPICategoryFileTimestamp
would be:
nm build/ios/Release-iphoneos/Runner.app/Runner | grep NSFileCreationDate
nm build/ios/Release-iphoneos/Runner.app/Runner | grep NSFileModificationDate
nm build/ios/Release-iphoneos/Runner.app/Runner | grep fileModificationDate
nm build/ios/Release-iphoneos/Runner.app/Runner | grep NSURLContentModificationDateKey
nm build/ios/Release-iphoneos/Runner.app/Runner | grep NSURLCreationDateKey
nm build/ios/Release-iphoneos/Runner.app/Runner | grep getattrlist
nm build/ios/Release-iphoneos/Runner.app/Runner | grep fstatat
nm build/ios/Release-iphoneos/Runner.app/Runner | grep "stat$"
Those also don't hit for me when I build locally with your dependency list though.
Does this mean the issue was resolved for next time?
I do not know how Apple's enforcement of Required Reason APIs works, so I can't say what will happen next time. If you upload an app to Apple where the Runner
binary you upload does not have hits for those symbols, but you still get an ITMS-91053
warning for NSPrivacyAccessedAPICategoryFileTimestamp
on the Runner
file, that would mean that I do not currently know how to reliably detect these cases locally.
How come I got the email from Apple then?
Only Apple can definitively answer questions about why they flag applications. We'll continue to work on creating documentation for the cases we can, but you could also reach out to Apple to let them know that you do not know why your application is being flagged and request guidance.
from flutter.
nm build/ios/Release-iphoneos/Runner.app/Runner | grep NSFileCreationDate nm build/ios/Release-iphoneos/Runner.app/Runner | grep NSFileModificationDate nm build/ios/Release-iphoneos/Runner.app/Runner | grep fileModificationDate nm build/ios/Release-iphoneos/Runner.app/Runner | grep NSURLContentModificationDateKey nm build/ios/Release-iphoneos/Runner.app/Runner | grep NSURLCreationDateKey nm build/ios/Release-iphoneos/Runner.app/Runner | grep getattrlist nm build/ios/Release-iphoneos/Runner.app/Runner | grep fstatat nm build/ios/Release-iphoneos/Runner.app/Runner | grep "stat$"
I ran all of these and empty results showed up for me too.
I do not know how Apple's enforcement of Required Reason APIs works, so I can't say what will happen next time. If you upload an app to Apple where the
Runner
binary you upload does not have hits for those symbols, but you still get anITMS-91053
warning forNSPrivacyAccessedAPICategoryFileTimestamp
on theRunner
file, that would mean that I do not currently know how to reliably detect these cases locally.
Hmm. I don't know what's going on then with Apple.
Only Apple can definitively answer questions about why they flag applications. We'll continue to work on creating documentation for the cases we can, but you could also reach out to Apple to let them know that you do not know why your application is being flagged and request guidance.
If I ask apple developer support about it, what should I say specifically? I'm worried I won't be able to update my app after May 1st...
from flutter.
Maybe a good starting point for the lack of documentation from the Flutter team, would be the documentation provided by Unity (another framework on Apple's list of affected SDKs):
https://forum.unity.com/threads/apple-privacy-manifest-updates-for-unity-engine.1529026/
from flutter.
Sorry @stuartmorgan, but I'm a little bit confused about how to determine wich packages should be upgraded.
Our project start to receive this warning too but I'm not using facebook_app_events
or so.
I will attach my dependencies below but if you can explain how to determine wich one is the "guilty", would be great.
pubspec.yaml
dependencies:
flutter:
sdk: flutter
provider: ^6.1.1
get_it: ^7.6.7
rxdart: ^0.27.7
another_flushbar : ^1.12.30
device_info_plus: ^9.1.2
internationalization: ^4.0.1
shimmer: ^3.0.0
webview_flutter: ^4.4.2
flutter_web_browser: ^0.17.1
dio: ^5.4.1
dio_smart_retry: ^6.0.0
local_auth: ^2.1.8
flutter_secure_storage: ^9.0.0
shared_preferences: ^2.2.2
pin_input_text_field: ^4.5.1
firebase_core: ^2.25.4
firebase_messaging: ^14.7.15
sms_autofill: ^2.3.0
intl: ^0.18.1
sticky_headers: ^0.3.0+2
flutter_masked_text2: ^0.9.1
flutter_html: ^3.0.0-beta.2
auto_size_text: ^3.0.0
fl_chart: ^0.66.2
keyboard_actions: ^4.2.0
fab_circular_menu: ^1.0.2
carousel_slider: ^4.2.1
sqflite: ^2.2.8+4
path_provider: ^2.1.2
badges: ^3.1.1
flutter_reorderable_list: ^1.3.1
font_awesome_flutter: ^10.4.0
geolocator: ^10.1.0
flutter_inappwebview: ^6.0.0
open_filex: ^4.4.0
flutter_animation_progress_bar: ^2.3.1
share: ^2.0.4
url_launcher: ^6.1.11
rive: ^0.9.1
email_validator: ^2.1.17
universal_platform: ^1.0.0+1
easy_pdf_viewer: ^1.0.7
horizontal_data_table: ^4.3.1
flip_card: ^0.7.0
connectivity_plus: ^5.0.2
flutter_chat_ui: ^1.6.12
uni_links: ^0.5.1
flutter_keyboard_visibility: ^6.0.0
flutter_svg: ^2.0.5
mask_text_input_formatter: ^2.8.0
currency_text_input_formatter: ^2.1.8
flutter_tts: ^3.8.5
crypto: ^3.0.3
collection: ^1.15.0-nullsafety.4
flutter_chat_types: ^3.6.2
local_auth_android: ^1.0.37
local_auth_ios: ^1.1.7
vector_math: ^2.1.4
flutter_localizations:
sdk: flutter
Edit:
This was the warning:
ITMS-91053: Missing API declaration - Your app’s code in the “Runner” file references one or more APIs that require reasons, including the following API categories: NSPrivacyAccessedAPICategoryUserDefaults
from flutter.
@thomas-stockx Unfortunately almost nothing on that page would apply to Flutter developers.
from flutter.
Related Issues (20)
- Typo in context_vk.cc log message HOT 1
- ListTile.tileColor ignores Colors.white* HOT 6
- Unable to run a custom engine with a custom dartEntryPoint in Swift (works well in Kotlin) HOT 2
- mac-9 lost external connection phone device. HOT 2
- mac-25 lost external connection phone device. HOT 2
- [tool_crash] FileSystemException: Cannot open file, OS Error: The system cannot find the file specified., errno = 2 HOT 2
- mac-29 lost external connection phone device. HOT 2
- ExpansionPanel expand/collapse icon appears disabled when ExpansionPanel.canTapOnHeader is true HOT 3
- Examples in `examples/api` cannot run because of a missed step while migrating to the declarative plugins {} block HOT 2
- After rotating the screen, the UI cannot overlay the status bar HOT 3
- لاأستطيع الرجوع الى الصفحه السابقه بعد التعديل عليها HOT 3
- Wrong link in flutter codelab first HOT 4
- TextFormField becomes unresponsive after Navigator.push HOT 4
- [google_maps_flutter] GoogleMap widget is black on android when not using mapsImplementation.useAndroidViewSurface = true HOT 7
- 3D View Like swiftui HOT 4
- unawaited_futures lint rule is not working by default in flutter_lints/flutter.yaml HOT 4
- [flutter_lints] Consider including `discarded_futures` and `unawaited_futures` HOT 5
- update discarded_futures lint rule to not trigger when a widget expect a futur HOT 3
- [Impeller] immediately encode geometry data to host buffer when dispatching. HOT 3
- [Proposal] Reduce warnings in flutter.groovy file HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from flutter.