iPadOS is the operating system for iPad.

Posts under iPadOS tag

200 Posts
Sort by:

Post

Replies

Boosts

Views

Activity

Unable to use photo picker in app on only one iPad Pro device
We are in the midst of testing camera and photo/video access using iPadPro 17 Beta (21A5326a) from within our application, and we are encountering an error message on only one device (iPad Pro 12.9-inch, A2229). Full access to the camera roll has been explicitly granted to the application when prompted. On only the above device, attempting to select an existing photo results in this error popup: "Photo or Video Unavailable: This app is using the Photos picker in an unsupported configuration." (We are able to take and save new photos from within our application on this device with no issues.) I have a second device on hand (iPadPro 10.5-inch, A1701) that presently also has the same iPadOS version installed and is running the same application, and we are able to select existing photos and take new photos with no errors. I have compared the Photos settings on both devices, and they appear to be identical. On a third iPad device running with the same iPadOS version, application, and Photos settings (that device is not in my possession), it has been reported that no errors are encountered when either taking new photos or selecting existing photos via the Photo Picker from within our app. We are trying to figure out what might be causing this error to appear when selecting existing photos on only the A2229 device, and/or what aspect of the configuration or settings would need to be modified in order to use the photo picker on that one iPad Pro. This issue had not been encountered on the A229 device while running with iPadOS 16. Searching the text of this error message online has not returned anything significantly meaningful thus far.
4
0
761
Apr ’24
Guideline 2.1 - Performance - App Completeness
We were still unable to review your app as it crashed on launch. We have attached detailed crash logs to help troubleshoot this issue. While we appreciate that your app is intended primarily for use on iPhone, in order to bring your app into compliance with App Store guidelines, all apps designed for use on iPhone must still be formatted correctly and behave properly when run on iPad. Review device details: Device type: iPad OS version: iOS 17.2 crashlog-82A3D8C6-0136-4C68-A006-6A4AE49B1D1C.txt crashlog-DBA3D1B0-5760-4B47-8FE7-DE44C570271A.txt crashlog-C30814D5-13BC-40FE-92EC-89E736FA7F1B.txt my app crashed only on iPad mini 6th generation its run fine on all other iPad's
1
0
674
Apr ’24
iPad app on Mac - Fix window aspect ratio
I'm developing an app that works on iOS and iPadOS in Portrait mode only. I'd like it to be able to run on Apple Silicon Macs as well, but when I try running it on my Mac, the application screen it resizable to any size and any aspect ratio. (Oddly, it works fine in visionOS, where the window can be made bigger or smaller but always maintains a portrait aspect ration.) Is there some way I can have the aspect ration fixed when the app runs on macOS? Thanks!
1
0
279
Apr ’24
deadlock thread
Hi. We have weird trouble related to the multi-threading. Does anyone have ideas how to resolve or avoid? Sample Code // sample.hpp class Sample { public: Sample(); ~Sample(); void Init(); void Dealloc(); void OnEvent(); private: std::mutex sample_mutex_; int counter = 1; } // sample.cpp #include "sample.hpp" Sample::Sample() {} Sample::~Sample() {} void Sample::Init() { std::async([]() { std::this_thread::sleep_for(std::chrono::seconds(2)); this->OnEvent(); }); } void Sample::Dealloc() { std::lock_guard<std::mutex> lock(sample_mutex_); counter = 0; } void Sample::OnEvent { // called from another thread std::lock_guard<std::mutex> lock(sample_mutex_); counter += 1; } // obj_sample.h @interface ObjSample : NSObject - (id _Nonnull)init; @property(nonatomic, readonly) std::shared_ptr<Sample> sample; @end // obj_sample.mm @implementation ObjSample - (id _Nonnull)init{ if (self = [super init]) { _sample = std::make_shared<Sample>(); _sample->Init(); } return self; } - (void)dealloc { sample->Dealloc(); } @end What happens the deadlock happens. according to the debug navigator with the Xcode, we figured out 2 facts below. OnEvent does not end although it looks completed. void Sample::OnEvent { // called from another thread std::lock_guard<std::mutex> lock(sample_mutex_); counter += 1; } // <= Thread 35: stop here Sample::Dealloc is run on the same thread of OnEvent. // debug navigator Thread 35 2 Sample::Dealloc <- this is weird. 3 Sample::OnEvent We guess they causes the deadlock. probability less than 10% Environment MacOS: 14.3.1(Apple M1) Xcode: 15.3 iOS Simulator: 17.0.1
3
0
309
Apr ’24
PDFKit since iPadOS 17.2: Annotations are scaled down when saving file
Dear Developer Community, My app is saving handwritten notes, forms and images as annotations in PDF documents by using PDFKit. Since iPadOS 17.2, the content of the annotations within the annotation boundaries is scaled down when saving the annotated PDF file. I.e. the annotation boundaries remain unchanged, but the displayed annotation content shrinks and no longer fills the boundaries. This gets worse with every save operation and applies both to newly created annotations and to elements that were saved before iPadOS 17.2. This issue only occurred after updating to iPadOS 17.2. The same code on my test device with iPadOS 17.1 works perfectly. Does anybody have a similar issue and/or found a workaround to solve this problem? Thanks for any idea!
2
1
646
Apr ’24
Why is my iPad not accepting screenshot images from my Mac?
I frequently use the Universal Control feature from my Mac, the 27in, to my iPad Pro 5th gen, and recently, when I take a screenshot from my Mac and drag and drop to my tablet, the image won't appear. To be clear, I see the mouse going from the Mac to the iPad, and I see the image floating on the iPad, but when I release the image, it does not appear on the screen. I have the latest update, the Sonoma 14.4. I've searched everywhere and I honestly don't know what to do. I am not good with tech, but I don't know what else to do. In addition, I don't know if this is relevant, but my Mac does not find my iPad on Bluetooth and I have tried everything as well. I restarted it, and everything and nothing.
0
0
259
Mar ’24
iPad Split View causing crash due to incorrect parent view controller in multitasking mode
I'm encountering a crash in my iPad application when using Split View or Slide Over multitasking mode. The crash is occurring with the error message: Crashing on exception: child view controller:<UIPageViewController: 0x155f84200> should have parent view controller:<MyApp.HomeViewController: 0x29e040800> but actual parent is:<MyAoo.HomeViewController: 0x12d2c5e00> The issue seems to be related to incorrect parent view controller assignments when retrieving the top view controller using the window. I've tried to address this by saving the persistent identifier in UserDefaults and comparing it when retrieving the key window, but the problem persists. Here's a snippet of the code I'm using to retrieve the key window: `static func getKeyWindow(for role: UISceneSession.Role = .windowApplication) -> UIWindow? { for scene in shared.connectedScenes { guard scene.session.role == role else { continue } if let savedIdentifier = UserDefaults.standard.string(forKey: "\(scene.session.persistentIdentifier)") { debugPrint("#### saved identifier is \(savedIdentifier)") if scene.session.persistentIdentifier == savedIdentifier { return (scene as? UIWindowScene)?.windows.first { $0.isKeyWindow } } else { debugPrint("#### didn't match identifier") } } else { return (scene as? UIWindowScene)?.windows.first { $0.isKeyWindow } } } return nil }` It seems like the issue arises when the app is opened in a split view, as the persistent identifier changes but the app fails to differentiate between the different instances. Consequently, it takes the wrong Split View window and returns the wrong HomeViewController instance, leading to the crash. How can I properly handle the retrieval of the top view controller to avoid this crash in multitasking mode on iPad? Any insights or suggestions would be greatly appreciated. Thanks in advance!
0
0
418
Mar ’24
Can't override 'perform escape gesture' VoiceOver to block going back to previous screen
This is the situation: one of the flows in our app is a navigation stack that consists of several screens. At a certain point in this flow, one of the screens lacks a back button, because we don't want the user to go back to a previous screen in that flow. For sighted users everything works fine. But once a screen reader user activates VoiceOver and uses the perform escape gesture (2 fingers right-left-right) the app does go back to the previous screen! We tried to override accessibilityPerformEscape (both in UIKit and SwiftUI) and do nothing in that method and in case of UIKit return true. That blocks going back when you're focusing on an element on the screen that belongs to the presented screen/viewController (not to the navigationBar). But once the user is focused on the navigationBar and performs the escape gesture, the user can still go back. We tried to override again the accessibilityPerformEscape on the UINavigationController level and the UINavigationBar level but they are not even called.
0
0
289
Mar ’24
iOS 17.4 hangs/freezes
Hi, I have an app in the AppStore and some users reported problems when pressing a NavigationLink that leads to a new view since updating to iOS 17.4. The view that should open only contains a Text("Hello"). The strange thing is: I have to buttons leading to the same view, one is working and the other is not! Not working: NavigationLink(destination: AddServerView()) { Image(systemName: "plus.circle.fill") } Working: NavigationLink(destination: AddServerView()) { Image(systemName: "plus.circle.fill") } What is even more strange is, that the button reported working from user1 doesn't work for user2. User1 reported the problem also to be present on iPadOS 17.4. The problem never happened before iOS 17.4 and I can't reproduce any of the problems on multiple devices running iOS 17.4 including the simulator with multiple devices. I hope somebody can help in this regard or is experiencing issues like this. Kind regards
2
0
950
Mar ’24
Please enable Hypervisor APIs on iPad OS
Still no hypervisor support in iPadOS 17 Hypervisor is indeed physically possible on any of the M series chips included in the iPad Airs and iPad Pros, but locked away the iPadOS. Block hypervisor on iOS is reasonable to me, because it consume powers, not frendly for battery and not sutable for a mobile phone. But for iPadOS, the limitation is not reasonable to me. First, the Guideline 2.5.2 of iOS and iPadOS blocks code execution that loads dynamically, it may protect users because apps may load malicious code after it passes the revew from app store. But if we load codes in the hypervisor, any malicious can only run in the VM, and the safety of the VM is not an issue. Escape from a VM is even harder than escape from the sandbox of the safari browser. Even there are still other concerns about load arbitrary codes to hypervisor, we can limit it only load user selected code to the hypervisor, blocks app load code from interent without user intention. Running user selected code in the hypervisor won't threaten the security at all, there is no reason for Guideline 2.5.2 applies to hypervisor. Second, iPad a laptop replacement in the advertisement. As a laptop, it can't execute any user generated code on it, it can only be interpreted. As a software develper, it means iPadOS basically not useable. I can only run code on a remote server, and use iPad as a thin client. It can't be a standalone devices, even it has a powerful M2 chip. For the xcode on iPad, if apple concerns xcode on iPad breaks the security model, we can run the compiled code in the hypervisor, which isolates the reviewed code and user generated code. iPad has a powerful M2 chip, but iPadOS limit the power for it.
2
4
662
Mar ’24
parallax on iPadPro
Is apple still deciding what we can view, disabling parallax on websites (safari) or is there a workaround? I am a graphic designer and web developer with an iPad Pro. iPadPro uses "desktop" css not tablet (due to its larger size), so it looks like the desktop website but the beautiful features of parallax are missing. Not helpful with troubleshooting and editing websites on iPadPro after hours. Anyone know a way to force parallax to work?
0
0
338
Mar ’24
WKWebView fails to open .doc file
I'm currently using a WKWebView to load certain types of documents via loadRequest, but I've recently been running into an issue with .doc files doing this: static NSString *customScheme = @"customscheme"; @interface WordDocWKSchemeHandler : NSObject <WKURLSchemeHandler> @end @implementation WordDocWKSchemeHandler { NSData *_data; NSString *_mimeType; } - (instancetype)initWithData:(NSData*)data mimeType:(NSString*)mimeType{ self = [super init]; if (self) { _data = data; _mimeType = mimeType; } return self; } - (void)webView:(WKWebView *)webView startURLSchemeTask:(id<WKURLSchemeTask>)urlSchemeTask { NSURL *url = urlSchemeTask.request.URL; if (![url.scheme isEqualToString:customScheme]){ return; } NSURLResponse *response = [[NSURLResponse alloc] initWithURL:url MIMEType:_mimeType expectedContentLength:_data.length textEncodingName:@""]; [urlSchemeTask didReceiveResponse:response]; [urlSchemeTask didReceiveData:_data]; [urlSchemeTask didFinish]; } - (void)webView:(WKWebView *)webView stopURLSchemeTask:(id<WKURLSchemeTask>)urlSchemeTask{ //empty } @end - (void)_setupWebViewPropertiesAndConstraints{ _webView.navigationDelegate = self; _webView.hidden = YES; [self.view addConstrainedSubview:_webView]; [self.view addConstraints:[_webView constraintsForFillingSuperview]]; self.container.showsLoadingIndicator = YES; } - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; WKWebViewConfiguration *docConfig = [WKWebViewConfiguration new]; WordDocWKSchemeHandler *schemeHanlder = [[WordDocWKSchemeHandler alloc] initWithData:_content.data mimeType:_content.contentType]; [docConfig setURLSchemeHandler:schemeHanlder forURLScheme:customScheme]; //Setup webview with custom config handler _webView = [[WKWebView alloc] initWithFrame:self.view.frame configuration:docConfig]; [self _setupWebViewPropertiesAndConstraints]; NSURL *customURL = [NSURL URLWithString:[NSString stringWithFormat:@"\%@:/",customScheme]]; [_webView loadRequest:[NSURLRequest requestWithURL:customURL]]; } The mimeType is correctly being resolved to "application/msword" but any time we try to load this the navigation fails: -(void)webView:(WKWebView *)webView didFailNavigation:(WKNavigation *)navigation withError:(NSError *)error { The error message here is OfficeImportErrorDomain Code=912. I've tried this on both a simulator and actual device on iOS 17 and 16 and this always fails. I've also tried turning the data into a base64 string and loading it that way and this also fails. Any advice here would be appreciated. It seems like this used to work at some point but no longer works.
0
0
366
Mar ’24
Crash in background for iOS 17.3.0 and later devices
We found crash reports from Xcode organizer about some crashes happening only in iOS and iPadOS version 17.3.0 and later across all our releases mostly in background state related to Network SDK. Unfortunately, we are unable to reproduce the issue. On the crashed thread, it seems to refer to process from Network SDK but we never import and use it directly in our project. Most of the functions found in the main thread in the crash report can't be accessed from the project, it seems to be internal framework calls in iOS SDK. The crash pointing to this line of code: nw_protocol_error Bug number: FB13661192 Somehow I cannot attach any crash report here, it always return error This post contains sensitive language. Please revise it in order to continue. whenever I try to submit it. If I remove it, I can submit the post.
4
0
510
Mar ’24
Show overflow menu (more menu) as disabled in iOS 16+
Hi! I'm moving my UINavigationBar and UINavigationItem to the iOS 16 style and having trouble with disabling buttons. Before: I'm defining rightBarButtonItems with a few barButtonItems plus a (custom) menuButtonItem (which has a menu with some more actions). After: I'm defining trailingItemGroups and let the system create an overflow menu dynamically, depending on space. I'm also defining some additionalOverflowItems. Here's the problem: How can I access the button/barButtonItem that is showing the overflow menu and call isEnabled = false? My UI, so far, has disabled all buttons during edit mode. I don't want to hide them, but have them grayed out, including the overflow menu button. class MyVC : UIViewController { // ... override func setEditing(_ editing: Bool, animated: Bool) {         super.setEditing(editing, animated: animated) // ... // This doesn't disable the overflow menu button         navigationItem .trailingItemGroups .forEach { $0.barButtonItems .forEach { $0.isEnabled = !isEditing } }     } }
1
0
282
Feb ’24
iOS 17 Update Causes App to Crash on Some Devices
When a user updates their device to iOS 17 (any version) on a device with MDM, our app crashes but only on some device, not all. The same app runs fine on iOS 16. We cannot recreate the issue in-house and even our customers cannot reliably recreate the crash as it only happens on some devices and not others. The crash we get is: SIGABRT: UICollectionView internal inconsistency: missing final attributes for cell Once the device gets this crash, the only way to fix it is to delete and reinstall the app and then everything works fine. Anyone having a similar issue with iOS 17 and MDM?
2
0
921
Feb ’24
QLSupportedContentTypes cannot contain system-supported types (UTIs)
Hi folks, My app is reading proprietary files with the file name extension .JPX - which is out of my control. In addition I’m providing QuickLook and Thumbnail extensions, used system-wide and in my app. Unfortunately iOS is assigning the JPEG-2000 file type (UTI „public.jpeg-2000“) to this file extension, and therefore - to work with associated files - my app is importing this UTI and both extensions are listing „public.jpeg-2000“ in their info.plist as QLSupportedContentTypes. This works to some extent in simulators and when debugging from Xcode on a device: Files with the file extension „.JPX“ are listed with thumbnails provided by my extension, although the preview seems to invoke the system-provided viewer and fails. Not perfect, but good enough as my app requires an icon preview (aka thumbnail) in its UIDocumentBrowserViewController. But when I try to submit my app incl. extensions to the Apple App Store / TestFlight asset validation is reporting an error: „Asset validation failed. Invalid Info.plist value. The value for the key ‚QLSupportedContentTypes‘ in bundle … is invalid. [public.jpeg-2000] are system-supported types.“ How to assign QuickLook / Thumbnail extensions to 3rd party files types whose extension is conflicting with a system-supported UTI? I just spent one of my TSIs for this question - as my Apple developer membership is renewed shortly - but maybe this community as some smart tip to share... Appreciate any help, Mattes
1
0
440
Feb ’24