Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-19753] Apple rejects app because it detected Handoff API reference with no use

GitHub Issuen/a
TypeBug
PriorityCritical
StatusClosed
ResolutionFixed
Resolution Date2015-10-22T22:16:05.000+0000
Affected Version/sRelease 5.0.0
Fix Version/sRelease 5.1.0
ComponentsiOS
Labelsn/a
ReporterFokke Zandbergen
AssigneeHans Knöchel
Created2015-10-20T19:06:53.000+0000
Updated2015-11-20T04:28:15.000+0000

Description

Two [Q&A users reported](https://community.appcelerator.com/topic/3597/apple-reject-app-because-it-detect-handoff-feature) it has app was rejected by Apple because: {quote} 2.3 Details We were unable to locate some of the features described in your marketing materials or release notes. Specifically, your app uses the Handoff API, but does not provide Handoff functionality. Please revise your app to ensure that these features are fully implemented or revise your application to remove the Handoff API from use. We look forward to reviewing your revised app. Best Regards, App Store Review {quote} I know we're not including API classes that are not being used, but of course for Handoff, App Shortcuts and other features we set up delegates in our bootstrapping as well. It looks like we might need to somehow do this only if it is actually used. Options: * Have users enable these features via a tiapp.xml property. * Scan the code for usage of the APIs (which we do anyway) and then set a build flag which we can then use in the bootstrapping code.

Comments

  1. Fokke Zandbergen 2015-10-21

    The [PR](https://github.com/appcelerator/titanium_mobile/pull/7324) might cause problems because when Titanium.App.iOS.UserActivity is not used, then Titanium.App.iOS.SearchableIndex still might be, which uses application:continueUserActivity:restorationHandler: as well. I'm not sure if there are other cases. Perhaps Universal Links? If Apple is getting more strict in this we might need to split up code in separate classes more to prevent using #ifdef all over the place.
  2. Chee Kiat Ng 2015-10-22

    PR merged.Waiting for backports.
  3. Hans Knöchel 2015-10-22

    PR (5_1_X): https://github.com/appcelerator/titanium_mobile/pull/7335 PR (5_0_X): https://github.com/appcelerator/titanium_mobile/pull/7336
  4. Ingo Muschenetz 2015-10-26

    [~hansknoechel] let's merge the backport.
  5. Eric Wieber 2015-10-28

    Verified fixed, using: MacOS 10.11.2 (15C27e) Studio 4.4.0.201510280736 Ti SDK 5.1.0.v20151028061258 Appc NPM 4.2.1 Appc CLI 5.1.0-38 Ti CLI 5.0.5 Alloy 1.7.16 Arrow 1.3.13 Xcode 7.2 (7C46l) Node v0.12.7 Java 1.7.0_80 production Submitted app was not rejected when using APIs from the Ti.App.iOS.* namespace

JSON Source