Hi,
I'm working on implementing Apple Pay on the Web.
I noticed, both on my web but also on official Apple Pay on the Web Demo page (https://applepaydemo.apple.com/apple-pay-js-api) when you're sending request for recurring payment, it takes much longer to get response from Apple server (even in onpaymentauthorized method) than when using regular payment.
You can test on the page mentioned above. When you authorise test card with basic payment it's pretty fast, but when you do authorisation with test card for recurring payment (or Deferred or Automatic Reload) "processing payment" is much longer.
Is there a reason why is this and is there a way to speed it up?
Thank you.
Kind regards,
Zoran
Delve into the world of built-in app and system services available to developers. Discuss leveraging these services to enhance your app's functionality and user experience.
Post
Replies
Boosts
Views
Activity
I have connected my Apple TV 4k to Sony Bravia TV using an HDMI Cable. Sometimes, all of a sudden, the screen starts blinking and Screen resolution (1080p) is displayed continuously. What is happening? I have tried different HDMI Cables, same result.
I would like to replace the deprecated method FSMountServerVolumeSync with the newer one NetFSMountURLSync.
I can properly mount my FTP volume using "Connect to Server" in the Finder and with FSMountServerVolumeSync (the volume comes as read only, but it's ok).
When I try to mount the FTP volume with NetFSMountURLSync I get this error message:
"The share does not exist on the server. Please check the share name and then try again".
But as I know I can't define the share on a FTP server. How can I fix this issue?
Hi everyone,
I was just wondering if anyone could point me in the right direction on how to properly handle inquiries about refunding in-app purchases.
I've seen multiple posts saying to direct them to Apple's support, but is there no other direct way of handling this?
Also, does Apple not provide an API to interface with so you can issue refunds on behalf of the customer?
Thanks.
I started getting a location error recently. I've never seen this error before and it began happeing randomly.
Here is the breakpoint. (if let locationManager........)
var currentLocation: Result<CLLocation, Error> {
get {
#if DEBUG
return .success(CLLocation(latitude: CLLocationDegrees(exactly: 0)!, longitude: CLLocationDegrees(exactly: 0)!))
#else
if let locationManager = self.locationManager {
return locationManager.currentLocation
}
return .failure(LocationError.unknown)
#endif
}
}
I've tried everything I can think of to fix the issue. It has an issue getting the users location when logging in.
I've made no changes to the code and everything has worked for years. The bug reports show nothing. I've tried re-installing Xcode, rebuilding the pods etc.
I've tried everything that you would normally do in this situation.
Maybe I didn't find the relevant instructions.
In my code, I only want to get the first 7 elements.
At present, my code is as follows:
@Query(sort:\Record.date, order: .reverse) private var records:[Record]
But I wonder if once the number of records is large, will it affect the efficiency?
In View, it is enough for me to count the first 7 elements in records. What should I do?
Hello, I've been working to implement PTT in the way recommended by the documentation. The main issue is that the bluetooth methods are opaque, so I cannot solve for what I need. The result will be that I will have to resort to hacky approaches that the PTT framework seems to be intended to solve (playing silent clips, playing custom notification sounds, having long running background audio sessions).
I am testing with Anker soundcore mini as well as airpod pro.
Here's the issue: there are 2 very different behaviours depending on whether I'm using a call/fullDuplex session and a halfDuplex session.
halfDuplex
Anchor mini
Current behaviour
long press activates siri
pressing again after siri is active, starts transmission
long press activates siri again
pressing again after siri is active, stops transmission
pause/play routes to the ongoing media session and plays music
Expected behaviour
play/pause should map to transmit/stopTransmit
IF I have to use long press, it should at least not trigger siri
AirPod pro
Current behaviour
long press changes noise cancellation
pause/play routes to the ongoing media session and plays music
Expected behaviour
play/pause should map to transmit/stopTransmit
fullDuplex/call
Anchor mini:
Current behaviour
long press activates siri
pressing again after siri is active, starts transmission
long press activates siri again
pressing again after siri is active, stops transmission
pause/play routes to the ongoing media session and plays music
Expected behaviour
play/pause should map to transmit/stopTransmit
IF I have to use long press, it should at least not trigger siri
AirPod pro
Current behaviour
long press changes noise cancellation
pause/play maps to mute/unmute (even if media is playing)
Expected behaviour
This makes sense for call behaviour, I wish it worked this well for PTT
The intention here is to be able to fully interact with a channel hands-free. The current API seems to make that impossible. Is that by design? Reading all the docs seems to suggest its intended for transmit/stopTransmit to be doable just with the play/pause buttons, but even apple hardware seems to not support that.
Maybe I didn't find the relevant instructions.
In my code, I only want to get the first 7 elements.
At present, my code is as follows:
@Query(sort:\Record.date, order: .reverse) private var records:[Record]
But I wonder if once the number of records is large, will it affect the efficiency?
In View, it is enough for me to count the first 7 elements in records. What should I do?
Hello,
We're trying to implement and test offer codes in our app. We have create all the necessary items in the App Store. The app has been reviewed and approved for release. We have not published it yet. We are redeeming the offer using a URL that opens the App Store. When I redeem, the account is updated, but the app does not see the Transaction.
We implemented using this: https://developer.apple.com/documentation/storekit/transaction
First, we used the Transaction.updates and then we added Transaction.all and neither return any Transaction.
Any ideas with there are any other dependencies that are required here or recommendations for how to test?
Hello, I would like to check with you on a possible APNS issue. We saw a huge spike in the number of failed requests towards APNS (both api.push.apple.com and api.development.push.apple.com). On October 31st, at 13:39 (during 1 or 2 minutes), more than 700k requests failed. Which means more than 10% of all requests made by our service to api.push.apple.com. Our service is sending notification requests for more applications, different AppIds, in high amounts.
Even more concerning is the fact that it happens more or less regularly now. 2-3 times a week. Still, just for short time, but I would like to check with APNS, whether it is something you know about.
Checking graphs in CloudKit did not help me much. They don't allow good enough granularity. Not more precise than 1 day.
Please, let me know if you are aware of some very short transient issues in APNS. Happening more or less regularly, with noticeable impact.
Hello all, I'm finding myself with a compile error when trying to use a defined UTType for Transferable conformance when the type is also an AppEntity.
The compiler error is
Could not determine the identifier of `.todo`. Please use a UTType defined by the UniformTypeIdentifiers framework
However, said compiler error only shows up after adding AppEntity conformance.
So, in order to reproduce:
Create any type, conform to Codable
struct Todo: Codable {
var id: UUID
var title: String
var completed: Bool
}
Create a UTType extension for the new type
extension UTType {
public static let todo: UTType = UTType(exportedAs: "org.nameghino.types.todo")
}
Add Transferable conformance
extension Todo: Transferable {
static var transferRepresentation: some TransferRepresentation {
CodableRepresentation(contentType: .todo)
ProxyRepresentation(exporting: \.title)
}
}
At this point, the code compiles correctly on Xcode 16.2 beta 2 (16C5013f)
Add AppEntity conformance
extension Todo: AppEntity {
static var typeDisplayRepresentation: TypeDisplayRepresentation = "todo_title"
static var defaultQuery = Todo.Query()
var displayRepresentation: DisplayRepresentation {
DisplayRepresentation(title: "\(title)")
}
struct Query: EntityQuery {
typealias Entity = Todo
init() {}
func entities(for identifiers: [UUID]) async throws -> [Todo] {
return []
}
func suggestedEntities() async throws -> [Entity] {
return []
}
}
}
Now the code is not compiling with the aforementioned error.
I have a Map within a SwiftUI.
I initialize a variable like this:
var cameraPosition: MapCameraPosition = .userLocation(followsHeading: true, fallback: .automatic)
and then I want to zoom map, code like this:
let userRegion = MKCoordinateRegion(
center: userLocation.coordinate,
span: MKCoordinateSpan(
latitudeDelta: 0.01,
longitudeDelta: 0.01
)
)
cameraPosition = .region(userRegion)
But it does't work. How can I solve this problem?
Hi,
Firstly: The whole question is about MacCatalyst (in IOS it works as intended)
In my Maccatalyst app I want to share Userdefaults between app and widget. I have added an app group to the widget and the app and have set up Userdefauls accordingly.
Here is the problem:
Xcode claims that the app group should start with "group.***" because Catalyst is based on iOS. If I do so, my Catalyst app rises the "App wants to access data from other apps" requester on EVERY launch. So, I can't use it in production. Even if I would accept the requester, the widget isn't able to access the defaults at all because it does not rise that requester, but silently ignores the access.
In contrast, if I setup the app group name with our TeamID (instead of group.*) then the requester vanishes, but Xcode does not accept it, issuing a warning and displaying the app group in red. I don't think this is advisable 'state' for production code. Even then widget can't see the data either.
What is the recommended way of sharing Userdefaults between Catalyst app and Catalyst Widget (not the iOS widget which displays the "open on iPhone warning" when clicked) on macOS ?
Thanks
Hi, I want to create a custom application launcher, so I'd like the app to be able to just list the apps installed and launch them when touched. My idea is to have a Minimalist UI in order to enhance productivity.
Is it possible? I see there is already one App doing it
https://apps.apple.com/us/app/dumb-phone/id6504743503
I want to do something similar, so how does the App in the link obtains the Apps installed on the device?
We have a requirement where we have to navigate user to specific section (Passwords) in device settings on tap of a button. I've seen other popular apps doing it & also seen some solutions where people provided an option of using "App-prefs". But as per documentation, this is a private API.
What is the solution here if I want to open specific section in device settings without taking a chance of my app getting rejected while submission process?
Kindly suggest the best approach for the below requirement.
Requirement Summary:
I have a camera that generates its own Wi-Fi network with some specifications, and I need my iOS app to automatically connect to that Wi-Fi whenever it's in range. This Wi-Fi network is used for transferring files between the camera and the iOS app and to give commands to camera to do certain actions. This Wi-Fi does not provide internet access.
Details:
The iOS app should automatically connect to the camera's Wi-Fi network once it launches.
The camera's Wi-Fi does not have internet access; it is purely for file transfers (e.g., photos/videos) between the camera and the iOS app and to command camera to do certain actions
The iOS device should still use mobile data for internet access while connected to the camera's Wi-Fi. The mobile data will be used to upload files to the cloud, as I have a large data plan available for internet use.
The app should maintain the connection to the camera's Wi-Fi as long as the iOS device is within proximity of the camera. If the device moves out of range and then comes back, the iOS app should prefer and reconnect to the camera's Wi-Fi over any other available networks.
I am looking for a solution or approach that can make this seamless, ensuring a stable connection between the camera and the iOS app while prioritizing mobile data for internet connectivity.
Hello, our app gets rejected as it crashes on launch. According to the logs, it happens because the app attempts to access private-sensitive data. We don't collect any of personal data, so it is probably done by Google Firebase embedded in the app (Core, Firestore, Auth). Maybe you have met similar cases and know any of Firebase settings that disable attempts of accessing privacy-sensitive data? We already set FirebaseDataCollectionDefaultEnabled to NO in info.plist, but it still not enough. Maybe error in facebook sdk? Before that it was written that there was an error when starting the ipad air 5
Log1
Log2
Log3
Within the output of command "sudo sfltool dumpbtm", in addition to records for UID 0/501/502/..., at the top of the output, there are also records for "UID -2" listed.
========================
Records for UID -2 : FFFFEEEE-DDDD-CCCC-BBBB-AAAAFFFFFFFE
========================
ServiceManagement migrated: true
SharedFileList migrated: false
LaunchServices registered: false
Items:
#1:
UUID: FC60A3EA-E4B0-4D8C-BA07-1C6E2DF3AA52
Name: (null)
Developer Name: (null)
Type: developer (0x20)
Flags: [ ] (0)
Disposition: [disabled, allowed, visible, not notified] (0x2)
Identifier: Unknown Developer
URL: (null)
Generation: 0
Embedded Item Identifiers:
#1: 16.com.microsoft.teams.TeamsUpdaterDaemon
But a uid with -2 should be invalid, and the guid "FFFFEEEE-DDDD-CCCC-BBBB-AAAAFFFFFFFE" followed looks also strange.
I created a macOS app, added an XPC service target, and also added a source editor extension.
in The source editor extension‘s perform function. It doesn't work
- (void)performCommandWithInvocation:(XCSourceEditorCommandInvocation *)invocation completionHandler:(void (^)(NSError * _Nullable nilOrError))completionHandler {
self.xpcConnect = [[NSXPCConnection alloc] initWithServiceName:@"test.TestNewXPCApp.NewXPC"];
NSXPCInterface *interface = [NSXPCInterface interfaceWithProtocol:@protocol(NewXPCProtocol)];
self.xpcConnect.remoteObjectInterface = interface;
[self.xpcConnect resume];
[[self.xpcConnect remoteObjectProxy] performCalculationWithNumber:@231 andNumber:@119 withReply:^(NSNumber *reply) {
// We have received a response.
NSLog(@"ui success%@", reply);
}];
But In ViewControler.m, executing the same code , it can work.
So why is it possible to connect to the XPC service from within the macOS app, but not from the source editor extension?
I am getting this error when trying to run the app on an actual IOS device using testFlight. It works well on simulators. I am using expo to build my app. I have done the following:
Added Sign in with Apple in Xcode for all the profiles ( i.e. debug and release)
Set expo.ios.usesAppleSignIn to true in my app.json ( I think due to this I see Synced capabilities: Enabled: Sign In with Apple while building my app using eas build. )
Make sure that the provision profile has Sign in with App capability.
What I am not able to understand is how option provided in provision profile works. Expo creates the profile with type "App Store". I think this is because I am building the expo app with production profile. Does this have to take anything with it? Does the profile with type "App Store" not work when I am testing the app using testFlight? I am so confused right now. Can someone help me figure out the actual issue?
I have seen almost all the posts regarding this error. None of those helped!
Thanks in advance!