Repository navigation
iOS: a URL scheme per game - #482
oliverames wants to merge 1 commit into
Conversation
|
Thanks for this, and nice to see the on-device run (60 fps, 0 dropped). Speaking as a fellow contributor (what lands is @seedds's call), a few suggestions that would make it easier to review:
|
9cd756f to
ea37ff7
Compare
ea37ff7 to
231a17f
Compare
|
Thanks @v0lumehi, all four points taken:
|
231a17f to
0bde5ea
Compare
|
One correction to my reply above: |
13fa6ee to
d957288
Compare
|
Rebased onto current |
|
Hi @seedds, this note is about all of my open PRs rather than just this one. I have 14 open, and all of them merge cleanly into I know the queue is long, with 183 PRs open, so I'm not asking for a date. Would it help if I picked an order? #482, #572, #575, #576 and #634 are each under 70 lines, so they'd be the quickest to read. I can also close any that don't fit. If you've already taken parts of my work in another form, tell me and I'll close those PRs. |
|
Hi @seedds, thank you for landing #653 and #787 and for crediting me on both. I'm glad the Vorbis and A short update on the open PRs, since
No reply needed. If you've taken any of these in another form, tell me and I'll close the PR. |
|
Hi @seedds, a status update on my open PRs against current Ten PRs had conflicts with #1102 is on hold for a decision.
#651: the None of my open PRs looks already landed on |
6a91bf2 to
74e2c95
Compare
build_ipa.sh registers two URL schemes in the app's Info.plist: the shared nxnative and this game's own nxnative-<title id>, so a launcher or a Shortcut can detect and open exactly this game. The keys are added to the Info.plist xcodegen just wrote, so a failure stops the build (die) like MetalCaptureEnabled's. test_ipa_unsigned.py runs the block on a fresh Info.plist and checks the single entry and the lowercased title ID, and that a plist which already names schemes stops the build instead of gaining a second entry.
74e2c95 to
ed63c38
Compare
|
Closing this. A per-game URL scheme is something a front end can add itself, and I'd rather keep the open list to changes the host needs. Thanks for looking! |
What and why
build_ipa.shregisters two URL schemes in the app's Info.plist, nothing else:nxnativenxnative-<title id>, so a launcher or a Shortcut can detect and open exactly this gameThe keys go into the Info.plist xcodegen has just written, so a failure stops the build (
die), asMetalCaptureEnableddoes.Scope note: this PR first carried four changes. After review it is the first of the split: the App Intent is #572, the launcher was dropped in favour of main's own, and the ProMotion hint is withdrawn (see the review reply).
GCSupportsGameModeis dropped too: Apple deprecated it in iOS 18.6 in favour ofLSSupportsGameMode, whichproject.ymlalready sets. It is now one commit rebased on currentmain: the eight URL-scheme lines and their test.Checked
dm/ios/tests/test_ipa_unsigned.pyruns the block against a fresh Info.plist and checks the singleCFBundleURLTypesentry with both schemes for two title IDs (lowercased), that the rest of the plist is untouched, and that a plist which already names schemes stops the build instead of gaining a second entry. All 7 tests in that file pass, the packaging and Xcode-workflow tests pass, andtest_docs/test_env_switchespass.scripts/regress.py check --games: not stated.Front ends
None: no front end has to act on this.
Docs
docs/reference/<subsystem>.mdentry, andpython3 dm/tools/docs_symptoms.pywas run (the symptom index). Not ticked: the diff touches onlybuild_ipa.shand its test, with no docs entry.dmsh_chain.py --headerwas run anddm/gfx/nvn/dmsh_chain.his part of the change. Not applicable: no chain tool changed (the diff isdm/ios/tools/build_ipa.shanddm/ios/tests/test_ipa_unsigned.py).