My app allows users to create their own documents. iOS stores them in/var/mobile/containers/Data/Application/FFFF/Documents/This folder is in the app bundle, yes?When the user installs an updated build from the app store, they would then lose all of their documents.How can the app be made to keep the user's documents when a newer build is downloaded from the app store?
Post
Replies
Boosts
Views
Activity
When changing the bundle identifier on my iOS Xcode project to match the bundle identifier of the app I've published, Xcode says this:
Failed to register bundle identifier
The app identifier "com.bookup.chessopeningswizard" cannot be registered to your development team because it is not available. Change your bundle identifier to a unique string to try again.
I can set it to any other bundle identifier and Xcode is okay.
I believe I need to set it to the app identifier of the published app because I'm creating a new version of the app.
When running an Xcode 13.2.1 Hello World project on an iPad with iOS 12.5.5 an Issues window appears.
Is 12.5.5 no longer supported?
Here is the contents of the Issues window:
Details
Could not launch “HelloWorldMike”
Domain: IDEDebugSessionErrorDomain
Code: 3
Failure Reason: Security
User Info: {
DVTErrorCreationDateKey = "2022-01-27 12:17:57 +0000";
DVTRadarComponentKey = 855031;
IDERunOperationFailingWorker = DBGLLDBLauncher;
RawUnderlyingErrorMessage = Security;
}
--
Analytics Event: com.apple.dt.IDERunOperationWorkerFinished : {
"device_model" = "iPad4,4";
"device_osBuild" = "12.5.5 (16H62)";
"device_platform" = "com.apple.platform.iphoneos";
"launchSession_schemeCommand" = Run;
"launchSession_state" = 1;
"launchSession_targetArch" = arm64;
"operation_duration_ms" = 6503;
"operation_errorCode" = 3;
"operation_errorDomain" = IDEDebugSessionErrorDomain;
"operation_errorWorker" = DBGLLDBLauncher;
"operation_name" = IDEiPhoneRunOperationWorkerGroup;
"param_consoleMode" = 0;
"param_debugger_attachToExtensions" = 0;
"param_debugger_attachToXPC" = 1;
"param_debugger_type" = 5;
"param_destination_isProxy" = 0;
"param_destination_platform" = "com.apple.platform.iphoneos";
"param_diag_MainThreadChecker_stopOnIssue" = 0;
"param_diag_MallocStackLogging_enableDuringAttach" = 0;
"param_diag_MallocStackLogging_enableForXPC" = 1;
"param_diag_allowLocationSimulation" = 1;
"param_diag_gpu_frameCapture_enable" = 0;
"param_diag_gpu_shaderValidation_enable" = 0;
"param_diag_gpu_validation_enable" = 0;
"param_diag_memoryGraphOnResourceException" = 0;
"param_diag_queueDebugging_enable" = 1;
"param_diag_runtimeProfile_generate" = 0;
"param_diag_sanitizer_asan_enable" = 0;
"param_diag_sanitizer_tsan_enable" = 0;
"param_diag_sanitizer_tsan_stopOnIssue" = 0;
"param_diag_sanitizer_ubsan_stopOnIssue" = 0;
"param_diag_showNonLocalizedStrings" = 0;
"param_diag_viewDebugging_enabled" = 1;
"param_diag_viewDebugging_insertDylibOnLaunch" = 1;
"param_install_style" = 0;
"param_launcher_UID" = 2;
"param_launcher_allowDeviceSensorReplayData" = 0;
"param_launcher_kind" = 0;
"param_launcher_style" = 0;
"param_launcher_substyle" = 0;
"param_runnable_appExtensionHostRunMode" = 0;
"param_runnable_productType" = "com.apple.product-type.application";
"param_runnable_swiftVersion" = "5.5.2";
"param_runnable_type" = 2;
"param_testing_launchedForTesting" = 0;
"param_testing_suppressSimulatorApp" = 0;
"param_testing_usingCLI" = 0;
"sdk_canonicalName" = "iphoneos15.2";
"sdk_osVersion" = "15.2";
"sdk_variant" = iphoneos;
}
--
System Information
macOS Version 12.1 (Build 21C52)
Xcode 13.2.1 (19586) (Build 13C100)
Timestamp: 2022-01-27T07:17:57-05:00
I've checked my notarized app's bundle and it contains an Info.plist which contains the NSMicrophoneUsageDescription pair that is expected.
The notarized app bundle is killed every time the code requests permission to use the microphone.
The very same app bundle, before notarization, works as expected, reporting that permission has been granted even though the user dialog never appears.
What is different about the notarized app bundle that would cause it to be killed when requesting permission to use the microphone?
I've successfully notarized my app. Apple sends me an email saying so.
But a minute later, I try running the app but it has a white circle/slash over the icon. It will not run.
So I check the notarization with:
$ spctl --assess --verbose ChessOpeningsWizardProfessionalBuild120.app
ChessOpeningsWizardProfessionalBuild120.app: rejected (the code is valid but does not seem to be an app)
Other apps are working. That is, they get notarized and keep functioning as apps.
What is behind this "rejected (the code is valid but does not seem to be an app)" message?
I'm coding in Delphi (not Xcode). Delphi is great, except that it's currently choking on code signing when making a file for distribution. It mistakenly picks up my Mac profile and certificate when it attempts to sign my app for distribution. The Delphi folks have been stumped by this for weeks.One possible solution would be to open another developer account where I only request iOS provisioning profiles. Then maybe Delphi will behave properly.Does Apple allow me to open a second developer account?Barring that, is there a way to temporarily delete the MacOS provisioning profiles?
I just updated my app for the first time.The earlier build was just for iPad. The new build is for both iPad and iPhone.Existing users are being charged for the new build when they try to get it on their iPhones. How do I fix this?