I cannot sign in with Sandbox tester ID (the fields are not even displayed in Settings-App Store).
I am running Xcode 14.2 and attempting to test on a developer-signed physical device (iOS 16.1.2). Following the steps in Apple documentation ("Setting up StoreKit Testing in Xcode"), I have been able to run tests using using local StoreKit configuration file. All works well. I next wanted to try to use Sandbox Testing. Following the same documentation,
I set up a Sandbox Tester in Apple Store Connect.
I saved a Public Certificate from the storekit configuration file in
the project.
I removed the local StoreKit configuration file from the scheme’s run
options (by setting to "none").
I added the following conditional compilation block to my store
manager:
#if DEBUG
let certificate = "StoreKitTestCertificate"
#else
let certificate = "AppleIncRootCertificate"
#endif
It is my understanding that an option to sign in with the SandBox ID should appear in device's App Store Settings after the first time I attempt to make a purchase when running on the device physically connected to my Mac.
This is not happening. Am I missing a step? One possible mistake I made was placing the (above) conditional compilation block in the wrong place. Can someone recommend the best place for this? The documentation says to paste it in with my receipt validation code. Another suspected oversight might be something else I need to do in Apple Store Connect. Not sure. Any help appreciated!
Addendum - I get this message in the console:
Error enumerating unfinished transactions for first transaction
listener: Error Domain=ASDErrorDomain Code=509 "No active account"
UserInfo={storefront-country-code=USA,
client-environment-type=Sandbox, AMSServerErrorCode=0,
NSLocalizedDescription=No active account}
I am trying to upload hosted content for in-app purchases, however I have been unable to succeed so far.
I have previously uploaded around 100 in-app purchases packages for my app using Application Loader. I used to be able to upload these packages before without any issues. Now I’ve noticed that the latest version of Application Loader (Version 3.0) doesn’t even give me the option to upload hosted content (see attached)?
So instead I’ve taken the time to use the iTMSTransporter bash script instead. However when I try to upload the content packs using:
iTMSTransporter -m upload
I am getting the following error:
Package Summary:
1 package(s) were not verified because they had problems:
/Users/Cortana/Documents/iOS/Clients/AccentKit/InAppContent/854413379.itmsp - Error Messages:
ERROR ITMS-90320: "The archive for In-App Purchase 'com.accentkit.AustraliaFemale1' is invalid. The 'IAPProductIdentifier' in the ContentInfo.plist must match the In-App Purchase Product ID."
[2018-04-14 07:12:45 MYT] DBG-X: Returning 1
I’ve double checked and the value for IAPProductIdentifier on the ContentInfo.plist matches exactly with what’s setup on the In-App Purchase Product ID on iTunesConnect. (see attached screenshots) This error is making no sense to me.
Any ideas?
If there was an issue with banking and your sales contract are according to you theoretically back in effect, they may not be effectively back in effect, that is, from Apple's servers point of view.
perhaps this is a process that takes up to a week and the only way to speed it up is to call their technical support.
this is where that'll happen : https://developer.apple.com/support/technical/
I suspect it's likely that your app having been on monetary lockdown at any one point while the bank was an issue may have led into this buggy situation that apple may not have accounted for or that they have accounted for and want you to first go through their IT support process in order for them to first be able to asses that everything is in order.
cheers! :)
I've written an Application that uses XPC Service to communicate with its helper. The application launches and works as expected within Xcode.
However, the following error appears when I try to run the application outside of Xcode after I Archive it.
HideMyMac[27183:936477] XPCService error: Error
Domain=NSCocoaErrorDomain Code=4097 "connection to service named
io.jabbari.HideMyMac.HideMyMac-XPCService" UserInfo=
{NSDebugDescription=connection to service named
io.jabbari.HideMyMac.HideMyMac-XPCService}
Here is the source of this application on Github. I normally would provide source with my code, however, the xml style plists would clutter the page and take away from the post.
Here what I have attempted:
Step 1: Updated - Main App Target -> Capabilities Tab
Turned on 'App Sandbox'
Turned on 'App Groups'
Added an app group - 'XYZ'
Step 2: Updated - Helper Target -> Capabilities Tab
Turned on 'App Sandbox'
Enabled 'Outgoing Connections (Client)'
Turned on 'App Groups'
Added an app group - 'XYZ'
What am I missing anything?
This is probably not a good question for StackOverflow, because it's a very project-specific configuration issue.
The actual problem you're running into is that the XPCService crashes immediately:
HideMyMac[5999]: XPCService error: Error Domain=NSCocoaErrorDomain Code=4097 "connection to service named io.jabbari.HideMyMac-XPCService" UserInfo={NSDebugDescription=connection to service named io.jabbari.HideMyMac-XPCService}
ReportCrash[5995]: Saved crash report for HideMyMac-XPCService[6000] version ??? to …
this is because the SMJobKit framework cannot be found by the dynamic loader at the expected place:
Dyld Error Message:
Library not loaded: #rpath/SMJobKit.framework/Versions/A/SMJobKit
Referenced from: /Users/USER/Library/Developer/Xcode/Archives/2016-02-24/HideMyMac 24.02.16, 16.32.xcarchive/Products/Applications/HideMyMac.app/Contents/XPCServices/HideMyMac-XPCService.xpc/Contents/MacOS/HideMyMac-XPCService
Reason: image not found
So, you should check the copy files / embed framework phases in Xcode's build phases tab.
I'm trying to create an App on https://developers.pinterest.com/apps/
The App state is still "in development" and the hint says I need at least 1 more collaborators allthough I already have three.
Furthermore, uploading an image as App Icon causes a JS error in the App Management Page ("Error" and http state 500)
How to get over that obstacles:
Define the app with all necessary settings like devs, testers and an Icon?
I'm new to using IOKit and have noticed what I think is the sandbox making it fail.
Here is the test I'm trying (in Pascal) which runs fine outside the sandbox but when I enable it IOServiceOpen returns the error kIOReturnNotPermitted every time.
Is IOKit not safe in the sandbox for certain services? I was trying to get some fan speeds/cpu temperatures and I see there are some apps in the AppStore (sandboxed) doing this so I believe it's possible. The only one I could confirm appears to have an XPC service bundled with the app as a helper so maybe that's a clue to make IOKit work? I tried basically all the entitlements and none of them seemed to help any.
Thanks for any ideas you may have.
procedure TestIOKit;
var
err: kern_return_t;
masterPort: mach_port_t;
iterator: io_iterator_t;
device: io_object_t;
matchingDictionary: CFMutableDictionaryRef;
conn: io_connect_t;
begin
IOMasterPort(0, masterPort);
matchingDictionary := IOServiceMatching('AppleSMC');
err := IOServiceGetMatchingServices(masterPort, matchingDictionary, iterator);
if err <> kIOReturnSuccess then
writeln('IOServiceGetMatchingServices: ', err);
device := IOIteratorNext(iterator);
IOObjectRelease(iterator);
if device = 0 then
writeln('no smc found');
err := IOServiceOpen(device, mach_task_self_, 0, conn);
if err <> kIOReturnSuccess then
writeln('IOServiceOpen: ', err);
end;
I found the same problem trying to read SMC keys in order get sensor temps and fan speeds from inside an OSX Yosemite 'Today extension'. The extension needs to be sandboxed, and I was also getting the kIOReturnNotPermitted error every time I tried to read the temp and fan sensors.
The only way I got it working was by creating a XPC service that manages all the SMC stuff, configured as a launch agent. This way, the sandboxed app (the 'today' extension) asks the XPC service for all the relevant data, instead of messing with IOKit directly.
So far, it seems to be working properly.
You don't need an XPC (not sure I understand that answer given it would also need to be sandboxed).
You can use this temporary entitlement although I don't hold any hope of apple approving it for MAS - you'd need to make your case to try and justify its use in iTunes connect. I have a similar problem and it's the only "solution" i've found so far:
com.apple.security.temporary-exception.sbpl string (allow iokit-open)
I don't see the answer from Luis Glez provide a solution but wrong information.
In fact there is currently no way to access this I/O Kit functionality from a sandboxed app neither would it be approved by Apple for the App Store.
If you check sandbox status of the app from from Luis Glez you will see that it's not sandboxed at all. Also it's not available at the App Store and I assume this is the reason.
Terminal:
codesign --display --entitlements - VitalStats.app
There was a recent discussion on the Developer Forums and someone from Apple confirmed that there is no way.
https://devforums.apple.com/message/1082393#1082393
The solution is very simple. You need to add a few lines in the file entitlements
<key>com.apple.security.temporary-exception.sbpl</key>
<array>
<string>(allow iokit-open)</string>
<string>(allow iokit-set-properties (iokit-property "ConsoleUID"))</string>
<string>(allow mach-lookup (global-name "com.apple.AssetCacheLocatorService"))</string>
</array>
My app was just rejected for using IOKit in general. Does anyone else have the same problem? The app was approved for 60 earlier builds, but all of the sudden, Apple seems to have a problem with that now. I use IOKit to read battery information like current voltage etc.
Rejected because of 1.1.6 - Safety.
Thank you for your submission. During our review, we found that your app is not appropriate for the App Store.
We encourage you to review your app concept and evaluate whether you
can incorporate different content and features to bring it into
compliance with the App Store Review Guidelines.
For those who may still look for answer, in Catalina, the problem might be that the app first needs to get the Input Monitoring permission, if it's not granted or denied - You would certainly get kIOReturnNotPermitted error.
To try if this is the case, go to System Settings, Privacy, select Input Monitoring and check if Your app is allowed.
After granting the permission the error should disappear