Apple/fastlane submit for review action failing with unclear error message about privacy text - ios

I am following fastlane's default configuration conventions for a React Native project. That is to say, my project structure looks like (e.g.):
/ios/fastlane/metadata/en-GB
with the en-GB subdirectory containing the following files:
description.txt
keywords.txt
name.txt
privacy_url.txt
release_notes.txt
support_url.txt
Everything was working perfectly until I tried to internationalise.
Now, when fastlane's upload_to_app_store() (aliased with deliver()) runs in my CI/CD pipeline, it fails and I see the following error:
The provided entity is missing a required attribute - You must provide a value for the attribute 'privacyPolicyText' with this request - /data/attributes/privacyPolicyText
I already have privacy_url.txt in there which was previously sufficient.

The thing that fixed it was adding a apple_tv_privacy_policy.txt (just containing a URL pointing to our privacy policy) file to the en-GB subdirectory.
Weird, given that the Fastfile was working completely fine before without any sort of privacy policy for TV. Very frustrating error message!

Related

Kentico MVC - PageBuilder Error on external Staging site

Am using Kentico MVC v12 Service Pack.
Have enabled Preview feature and PageBuilder in Application_Start.
When running from localhost, can successfully edit relevant pages using PageBuilder as required.
However, when ran from a staging site, which is a clone of the localhost version, I am getting an error in the Site settings when I try to add a Presentation Url (I am definitely adding in a valid format with the starting "https://" included), which is required for the PageBuilder to be used in the Pages application, where I see this error:
An unexpected error occurred, see event log for more details. Event source: PageEdit, Event code PreviewLinkGeneration
Any assistance would be much appreciated.
Thanks.
Sites error
That error is basically only looking at the string of the URL (almost like a simple validation). Are you sure there is no whitespace before the value you entered in? I can re-create your issue if I type in a space character before the URL.
You can also try clearing the field and saving the form. Then re-enter a value.
If it is still not working, try re-signing all your macros in the system as I have seen the regular expression validation rules have issues if macros aren't working. Which is really what this check is:

What is customURLScheme in Firebase Dynamic Links?

In the documentation it says to add the following lines to my AppDelegate.swift:
// Set deepLinkURLScheme to the custom URL scheme you defined in your
// Xcode project.
FIROptions.default().deepLinkURLScheme = self.customURLScheme
From what I understand this should be the same link you put in your info.plist. However, I'm confused why in the quickstart-ios repo they decided to make this equal to "dlscheme".
Can anybody help me understand what exactly this scheme is?
This is not clear in the Dynamic Links integration instructions — I ran into the same issue even though I work with these things all day at Branch.io (full disclosure: we're an alternative/improvement to Dynamic Links).
When configuring a custom URI scheme, you need to supply both an Identifier and a URL Scheme. Apple recommends using a reverse domain value for the Identifier, but since your bundle ID is also typically reverse domain format, these two often end up being identical.
By default, Firebase expects you to use your bundle identifier as your custom URI scheme. When you do this, their default configuration takes over and you don't need to specify the FIROptions.default().deepLinkURLScheme = self.customURLScheme line at all. The URI scheme config ends up looking like this, which is a bit counter-intuitive:
However, if you decide to use a value that is not your bundle ID for the URL Scheme (very common), then you DO need the FIROptions.default().deepLinkURLScheme = self.customURLScheme line. But you also need this one before it: let customURLScheme = "somethingelse". You can see this here in the quickstart, and also where the URI scheme is defined in the info.plist file here.
Basically, the Firebase team tried to simplify things by assuming the bundle ID as the custom URI scheme value. This is not a bad option, but it can be confusing and as you can see, even their own quickstart project uses a more advanced config.

Read config settings from PhoneGap app

Apparently I'm terrible at Googling. All I want to do is have the ability to read my web service URL from a config file in my PhoneGap app. Also, be able to modify that value during the build process. Is this named alot different in Xcode? I think I need to save this value in the plist file. If that's the case, then I can just set a user-setting in my build configuration stuff to have it change depending on which build type, Dev/Release.
If that's true, how do I access this from PhoneGap?
I'm guessing this question will get closed, but where else do I go for help...
plist file for cordova project already depreciate since v2.2. Cordova v2.3 start using config.xml.
Target > Edit Scheme
You could probably use hooks to accomplish everything that you are trying to do without changing around the config.xml file, but I'm not entirely sure this is supported with Phonegap (it is with Cordova.)
Check out the official help page to use the /hooks/ folder to modify anything during the build process: https://github.com/apache/cordova-cli/blob/master/templates/hooks-README.md
This blog post also seems pretty useful: http://devgirl.org/2013/11/12/three-hooks-your-cordovaphonegap-project-needs/ it talks about changing things based on the environment and I'm sure it'd be easy to extend that to changing based on dev/release.
You could store the link to your web service probably as a config variable. I'm trying to figure out how you can add a config variable and will report back if I get it. In the mean time you could probably just have something like a server.txt file that you change with hooks.

launchimage module 2.1: Validation failed for module 'launchimage' with error: ipad

trigger.io;
after upgrading to launchimage module 2.1 I just get error 'Validation failed for module 'launchimage' with error: ipad'
any ideas what this error is about?
the old docs were really good, providing a very clear spec:
http://legacy-docs.trigger.io/en/v1.4/modules/launchimage.html
the new docs for version 2.1 are totally opaque:
https://trigger.io/modules/launchimage/current/docs/index.html
n.b. apologies for posting this to SO - its basically a trigger.io support request
I believe this error indicates that you haven't filled out the public lauchimage module in its entirety like this.
If you are packaging the app as universal I think you'll need to have all the fields filled out as Trigger then prepares your ipa for all platforms(iPad and iPhone).
I found its easiest to just ignore the docs, create a demo project and use the trigger.io toolkit app to generate example config - prevents toolkit app from overwriting existing app config.
have to say I'd way prefer to work from the documentation and edit json config files directly rather than spend my time going through tedious point-and-click config..

Failing to localize WIndows 8 App with Multilingual App Toolkit

I'm trying to localize my Windows 8 App with the Multilingual App Toolkit.
And for that I tried to follow this explanation to the point:
http://channel9.msdn.com/posts/Build-Multi-language-apps-using-the-Multilingual-App-Toolkit
but it fails with the following Output:
1> Multilingual App Toolkit build started.
1> Merge of Loc PRI file failed calling makepri.exe: '0x80073B08'
1> Multilingual App Toolkit build completed with errors.
I can't find anything for 0x80073B08.
If I remove all xlf language files from the project it compiles, is able to launch and to build a store package.
But as soon as there is any language file included it failes to build with the error above.
Any Ideas?
EDIT:
I'm using c# and a single resw file.
Everything works as long as I don't include any xlf files.
There are no duplicate keys (except partly duplicate like "MyButton.Text", "MyButton.[using:Windows.UI.Xaml.Controls]ToolTipService.ToolTip")
EDIT2:
Seems like the real problem is the extension format, e.g.:
ClearNotesButton.[using:Windows.UI.Xaml.Controls]ToolTipService.ToolTip
or
AddPageButton.[using:Windows.UI.Xaml.Automation]AutomationProperties.Name
if I use those makepri throws the exception above.
Does this mean I can't set the Tooltip and the Text of a Button via the x:Uid mechanism?
This error code indicates that a (localized) resource add was attempted, but the source resource is not in the PRI file. Three conditions were recently discovered that can cause this condition for resources.
A duplicate resource exists in the resjson file.
JavaScript Example:
"Cancel" : "Cancel"
"cancel" : "Cancel" <-- Duplicate resource
A resource ID conflicts with a different resource with the same base path information.
JavaScript Example:
"About" : "About title"
"About/OKBtn" : "OK". <-- Resource path is the same as a previous resource's ID
XAML Example:
MyButton : "Button without property"
MyButton.Content : "Hallo Welt" <-- Becomes MyButton/Content, which conflicts with MyButton ID
A resource ID contains the same name as the resource file.
Common Example:
Filename: Resources.resjson
"Dialog/Resources/Title" : "Welcome"
Please look for these conflicts as they are know to cause this error message. You could also see this error on the preview version. Please ensure that you are running the released version of the toolkit - it is v1.0.1114.0.
A new version of the Multilingual App Toolkit has been released that will help identify when this issue happens so you can easily adjust the resources. All three known issues are resolved with this release. The version is v1.1.1075.0 as displayed in the VS IDE Extensions and Updates dialog.

Resources