Posts

Post not yet marked as solved
0 Replies
326 Views
I’m creating a hybrid app using Swift and Angular. Angular content is loading on top of the Native Swift WkWebView. Starting from iPad 10th generation only in the app initial launch header area become invisible(invisible means header text becomes white). But once I send the app to background and return to foreground header text becomes black and it will show without problem. I would really like to know whether this is a OS problem and if so is there any pro-grammatical solution for this? if anyone can guide me to proper way fix this much a appreciated!!! Environment: ・Device: iPad 10th generation ・OS:iPad OS 17.3.1 ・Native App : Swift 5
Posted Last updated
.
Post not yet marked as solved
0 Replies
538 Views
Environment→ ・Device: iPad 9th generation ・OS:iPadOS17.1、iPadOS16.6 ・Printer model:EPSON PX-S730 What I want→ I want to determine whether the printer and iPad are connected to the same Wi-Fi network. Current issues→ When I run the below code on an iOS17 iPad, contactPrinter() becomes true even though you are not connected to the same network as the printer. Problem Description→ I want to pass the URL of the printer that I have set in advance and print directly from the device to the printer. So in iOS 16 when i execute the below code, without connecting to the same network as printer, return value of the "contactPrinter" method is FALSE. once i update to iOS 17 and ran the same code with the same conditions(iPad and printer not connected to same network), return value becomes TRUE. [I'm using "contactPrinter" method because after update to iOS 17 i was able to successfully launch a print job even if your device isn't connected to the same network as your printer.But in iOS 16 it return as an Error.] Is this a bug in iOS 17? Or is the method used incorrectly? Test code: let printer = UIPrinter(url: URL(string: "printer url")!) printer.contactPrinter { (available) -> Void in if (available) { // iOS17.1:true, iOS16.6:false print("connected to printer") printController.print(to: printer, completionHandler: printCompletionHandler) } else { print("not connected to printer") } }
Posted Last updated
.
Post not yet marked as solved
0 Replies
575 Views
Environment→ ・Device: iPad 9th generation ・OS:**iOS17.0.3 ・Printer model:EPSON PX-S730 What I want→ I would like to return an error when I submit a printing job, if the printer is not properly connected to the same WIFI as iPad(iOS17). Current issues→ When I run the below code in iOS17, I was able to successfully submit a print job to printer and, printer returns completed(true) as the result. In iOS16 print job return as an error to the same below code. Problem Description→ In iOS 16.6.1 when you know the correct printer access URL and submit a print job without connecting to the same WIFI as the printer, job return as an error.(return to the error code segment in the below code) But after I updated the app to iOS 17.0.3 and run the same job, it's not returning as an error.(it returns to the completed block in the below code segment and completed Boolean value is true. ) When you check the "Print Summary" window in iPad, the status of the print job is Waiting. So I would like to handle this process in the same way like iOS16 in iOS17. I would like to Print Job to return as a error when printer and iPad not connected to same WIFI(error like "cannot connect to the printer") Test code: let printInfo = UIPrintInfo(dictionary: nil) printInfo.jobName = "Print Job" printController.printInfo = printInfo let pdfURL = Bundle.main.url(forResource: "sample", withExtension: "pdf")! printController.printingItem = pdfURL let printer = UIPrinter(url: printerUrl) printController.print(to: printer, completionHandler: { [self] printController, completed, error in if(error != nil){ print("error") }else if completed{ print("completed") }else{ print("cancel") } }) Does anyone knows if it's a bug in iOS17 or am I missing something?
Posted Last updated
.
Post not yet marked as solved
1 Replies
672 Views
Environment→ ・Device: iPad 9th generation ・OS: iOS17.0.3 ・Printer model: EPSON PX-S730 What I want→ I would like to programmatically use the AirPrint API to directly print from my application to a selected printer specifying the printing as single-side Current issues → After updating the iOS from 16.6.1 to 17 version, when printing programmatically using the AirPrint API, even setting the print options as single-side, it end up printing on double- side. Issue description→ When I run the code below on iOS16.6.1, it prints on single-side,** but after updating to iOS17.0.3, It’s always printing on double-sides.** Also, the Apple Developer Documentation says that the print method disables duplex printing and it's describe in below URL: https://developer.apple.com/documentation/uikit/uiprintinteractioncontroller/1618174-print Test code: let printInfo = UIPrintInfo(dictionary: nil) printInfo.jobName = "Print Job" printController.printInfo = printInfo let pdfURL = Bundle.main.url(forResource: "sample", withExtension: "pdf")! printController.printingItem = pdfURL let printer = UIPrinter(url: printerUrl) printController.print(to: printer, completionHandler: { [self] printController, completed, error in if(error != nil){ print("error") }else if completed{ print("completed") }else{ print("cancel") } }) Does anyone knows if it's a bug in iOS17 or am I missing something?
Posted Last updated
.
Post not yet marked as solved
0 Replies
727 Views
I want to use the AirPrint API, which is a standard OS printing function, programmatically on an iOS application to print directly to a printer by specifying single-sided printing instead of double-sided printing for the first print after the OS is initialised. 〇Verification environment ・Device: iPad 9 generation ・OS:OS16.6 ・Printer model: EPSON PX-S730 / Brother MFC-J7300CDW / Canon G5030 / EPSON PX-M791FT ※All printers used for verification support AirPrint and are capable of duplex printing. 〇Issue The duplex printing option can be specified from the program using the AirPrint API property "duplex", However, when printing is executed from the program, the specified print option "duplex printing" is not reflected in the AirPrint API. 〇Verification results Installed the developed print verification app on the device in factory default state, and executed the print process from the app to the printer. (1st time) Set the property "duplex printing" = duplex or single-sided in the AirPrint API of iOS → In both cases, printing was performed on both sides. (2nd and subsequent times) Set the property "duplex printing" = duplex or single-sided in the AirPrint API of iOS → In both cases, printing is done on one side. 〇Source Code The print verification application we developed uses the UIPrintInteractionController class in Swift to specify the printing options for duplex printing. We believe we can specify this by setting "info.duplex = UIPrintInfo.Duplex.none" in the following source code and adding it to printInfo. func buttonClick(_ sender: Any) { let printController = UIPrintInteractionController.shared let printInfo = UIPrintInfo(dictionary: nil) printInfo.jobName = "PrintJob from PrintTestApp" // color printInfo.outputType = UIPrintInfo.OutputType.general // duplex mode for the print printInfo.duplex = UIPrintInfo.Duplex.none // set the single side option printController.printInfo = printInfo // PDF printing in project folder printController.printingItem = Bundle.main.url(forResource: "sample", withExtension: "pdf")! // printer settings let printer = UIPrinter(url: URL(string: "ipps://XXXXXXX/ipp/print")!) // direct printing printController.print(to: printer, completionHandler: { controller, completed, error in guard error == nil else { return } }) }
Posted Last updated
.
Post not yet marked as solved
0 Replies
875 Views
I'm using UIPrintInteractionController(AirPrint) to print documents in my swift application. I was able to print the documents using my application, but all of them are printing in one-sided. Now i want to add a double-sided printing as an option to my application. After some research i found that it can be implement by adding info.duplex = UIPrintInfo.Duplex.longEdge to printInfo. I tried it using the below code. private var printController = UIPrintInteractionController.shared let info = UIPrintInfo.printInfo() info.duplex = UIPrintInfo.Duplex.longEdge <<<<<< info.jobName = "XXXPrint" info.orientation = .portrait printController.printInfo = info printController.print(to: printer, completionHandler: { [self] controller, completed, error in if(error != nil){ print("successfully") }else{ print("Printing error: \(error.localizedDescription)") } } But whether i set it in the code and run my application it is printing the pages by one-sided. So if some one can guide me to double-sided printing workable solution highly appreciated!!
Posted Last updated
.
Post marked as solved
5 Replies
1.6k Views
I want to connect to Wi-Fi programmatically using swift in my iPad application and I want to create according to bellow flow. Enter the network name programmatically Set the programmatically "WAP2-Enterprise" for security. Set username/password. A certificate popup will appear, so tap "Trust". "Turn on the following information." otherwise off. Automatic connection Restrict IP address tracking Set the programmatically IPV4 address below. Configure ID: Manual IP address: 192.***.***.*** For tablets, ○○: 1 to 20 Subnet mask: 255.255.255.0 Router: 192.***.***.*** Configure DNS server(Set the programmatically) Manual Add server: 8.8.8.8 HTTP proxy(Set the programmatically) Configure proxy: off if anyone you can guide me to proper way much a appreciated!!!
Posted Last updated
.
Post not yet marked as solved
0 Replies
861 Views
I would like to know what errors can be handled by the UIPrintInteractionController.CompletionHandler.According to the UIKit documentation, four constants were defined for UIPrintError.Code, but that is very rough and I don't know which error codes are returned at specific times. When I print from my iPad using AirPrint, can I get detailed errors such as out of ink, paper jam, or insufficient paper? Also, is there another way to get and handle print errors other than using the UIPrintInteractionController.CompletionHandler?
Posted Last updated
.
Post not yet marked as solved
0 Replies
744 Views
I have deployed a angular site with nginx server in GKE and set the SSL authentication. I installed the client certificate using Mobileiron Cloud MDM in my ipad. Then i was able to access and validate the certificate using Safari . But when i trying to do the same thing using my application WkWebView it always giving me the "400 Bad Request" error. After some search i realize that we cannot acces the certificates which installed in the Apple Key chain and it they can be only access by applications Safari or apple Mail app. As a solution for this problem then i set the client certifcate inside App Bundle and was able to do the authentication by importing it using "SecPKCS12Import" and do the authentication. let securityError = SecPKCS12Import(data as NSData,                       [ kSecImportExportPassphrase as String : password ] as CFDictionary,                       &_items); Now WKwebView is loading only if authentication is correct. But for this methos i need to upload the client certificate to my App Bundle. So i would like to know, is there a way to do the SSL authentication in WKWebview without bundeling the client certificate to app bundle. I would like a way that i can deploy it in a remote way like Mobileiron Cloud MDM(i already have the subscription so there is no probles accesing all Mobileriron services.) and access that certifcate to authenticate in the WKWebview url loading.
Posted Last updated
.
Post not yet marked as solved
0 Replies
846 Views
We are using AVFoundation to create a Barcode/Qrcode reader.In there we created a Qr/Barcode detection square area to show in the middle of the ipad/iphone screen with red color boarder and we were able to read below types Barcode/Qrcode in ios 15.4 within that detection area. Below are the barcode types that we read. private let supportedCodeTypes = [ AVMetadataObject.ObjectType.codabar, AVMetadataObject.ObjectType.qr, AVMetadataObject.ObjectType.upce, AVMetadataObject.ObjectType.code39Mod43, AVMetadataObject.ObjectType.code39, AVMetadataObject.ObjectType.code93, AVMetadataObject.ObjectType.code128, AVMetadataObject.ObjectType.ean8, AVMetadataObject.ObjectType.ean13, AVMetadataObject.ObjectType.aztec, AVMetadataObject.ObjectType.pdf417, AVMetadataObject.ObjectType.itf14, AVMetadataObject.ObjectType.dataMatrix, AVMetadataObject.ObjectType.interleaved2of5] But when we update our source to iOS 16, only "AVMetadataObject.ObjectType.codabar" type barcode cannot read inside the detection area. All other barcode can be detect and read inside detection area. if we expand detection area to full screen "AVMetadataObject.ObjectType.codabar" can be readed. So is there a specific reason for this scenario or is it a problem comes with iOS 16?
Posted Last updated
.