Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ACToolTaskBase's AppendCommandLineArguments does not seem to support XSAppIconAssets/XSLaunchImageAssets outside of project directory #13592

Open
chamons opened this issue Dec 16, 2021 · 0 comments
Labels
iOS Issues affecting Xamarin.iOS msbuild Issues affecting our msbuild tasks/targets
Milestone

Comments

@chamons
Copy link
Contributor

chamons commented Dec 16, 2021

While working on the submission tests, I came across a strange NET6 tv extension test failure:

To quote the work around PR:

The ODRsTVOS test redirected outside and up to the legacy test directory to reuse it's Assets.xcassets folder.

However, this was causing failures like this:

*** Error: Validation failed for '../../../../SubmissionSamples/ODRsTVOS_Extension/ODRsTVOS/bin/iPhone/Release/ODRsTVOS.ipa'.
*** Error: Missing Info.plist Key. Your app's Info.plist must contain the 'CFBundleIcons.CFBundlePrimaryIcon' key. App 
*** Error: Missing Info.plist Key. Your app's Info.plist must contain the 'TVTopShelfImage.TVTopShelfPrimaryImageWide' key. App Store operation failed. (1091)

for the NET6 variant.

After a bunch of msbuild debugging, it turned out that we were not passing these argument to actool:

- --app-icon "App Icon & Top Shelf Image" 
- --launch-image LaunchImages 

This seems to be because this check fails when the directory is not next to the csproj.

This issue is to look into that strangeness. Given that it appears to affect legacy just as much as NET6, it is not marked at NET6 issue.

Steps to Reproduce

  1. Undo Add Assets.xcassets to dotnet/ODRsTVOS SubmissionSamples#47 and run SUBMISSION_FILTERS="--filter=ODRsTVOS_Extension" make OR create a project, move the assets out of the folder, and use a redirect ../ to path it outside of the folder, then build and submit the ipa.
  2. Note that - --app-icon "App Icon & Top Shelf Image" - --launch-image LaunchImages are not passed to actool or that the final binary info.plist doesn't have CFBundlePrimaryIcon for example.

Build Logs

This is Legacy with my hack to remove/redirect the asset folder outside the project:

msbuild.binlog.zip

@chamons chamons added iOS Issues affecting Xamarin.iOS msbuild Issues affecting our msbuild tasks/targets labels Dec 16, 2021
@chamons chamons added this to the Future milestone Dec 16, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
iOS Issues affecting Xamarin.iOS msbuild Issues affecting our msbuild tasks/targets
Projects
None yet
Development

No branches or pull requests

1 participant