Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-19178] Windows: Add tiapp property for windows app ID

GitHub Issuen/a
TypeImprovement
PriorityHigh
StatusClosed
ResolutionFixed
Resolution Date2015-09-14T22:44:37.000+0000
Affected Version/sRelease 4.1.0
Fix Version/sRelease 5.1.0
ComponentsWindows
Labelsqe-4.1.0
ReporterEwan Harris
AssigneeChristopher Williams
Created2015-07-06T20:47:37.000+0000
Updated2015-09-25T16:51:50.000+0000

Description

Description

Currently the Windows platform is using the id tag within the tiapp.xml in order to populate the Package/Identity/Name of the app. The Package/Identity/Name is given to the user by Microsoft when the app is created on the Windows developer dashboard, an example is 55769Appcelerator.pkgTest, the section before period is the same for every app created with the same account and the section after the period is the name of the app. In order to pass the Windows certification test the designated app id must be present, however when building for Android the Windows app id is not a valid id as it begins with a number. There should be a tag within the section of the tiapp.xml that is used to populate the Package/Identity/Name section for the app, allowing the same app to be published across multiple platforms with the same tiapp.xml

Steps to reproduce

1. Package an app for Windows phone without setting the id property to the id given from Microsoft 2. Upload the app to the dashboard on dev.windows.com 3. Change the id to match the property and repeat 1-2 4. Attempt to package for Android

Actual result

2. When validating the package the validation will fail 3. The validation will pass 4. The packaging will fail

Expected result

A developer should not have to change the tiapp.xml values between packaging for different platforms

Comments

  1. Christopher Williams 2015-07-22

    So I think even if we could use some sort of prefix to work around the use of leading digits in the app id, we have an issue of existing Android apps (and likely iOS) apps that the developers then add Windows support for - and the Windows Store assigns some new appid. According to this, the external appid must remain constant _forever_ or the app will be treated as new and lose ratings/counts/etc: http://tools.android.com/tech-docs/new-build-system/applicationid-vs-packagename It seems like even if we could magically find some way to get one appid to "work" on all platforms there's the issue of needing to specify different values for different platforms for existing apps - and also the issue of users picking an appid to use at the beginning of the process for Android/iOS and getting one assigned by the store for Windows.
  2. Christopher Williams 2015-07-27

    cc [~pinnamuri] - If we go forward with an overriding tiapp id per-platform underneath the platform tag, this will impact Studio in some way - either the schema used to validate tiapp.xml, and/or if we want some Ui to surface platform-specific values.
  3. Ewan Harris 2015-09-10

    Reopening ticket: Windows 8.1 Appc CLI Core: 5.0.0-50 Appc CLI NPM: 4.2.0-1 Titanium SDK : 5.0.0.v20150909153915 Nokia Lumia 930 8.1 When adding the app ID using the below, I still get the original app ID specified in the tiapp.xml
       <windows>
           <id>com.test</id>
       </windows>
       
  4. Ingo Muschenetz 2015-09-14

    My suggestion is we now defer this to 5.0.1.
  5. Christopher Williams 2015-09-14

    I intentionally am only using the windows specific app id for Windows store submission, not for analytics or Ti.App.id or anything else. My thought was that we want to still use the cross-platform Tiatnium appid for this app in our own APIs and analytics data - and that this value is specifically meant to only allow you to specify the correct Windows Store-assigned id for Windows Store submission.
  6. Ewan Harris 2015-09-16

    Verified using: Windows 8.1 Appc CLI Core: 5.0.0-55 Appc CLI NPM: 4.2.0-8 Titanium SDK : 5.0.0.v20150915230722 Lumia 930 (8.1) When using the below the ID specified will be used for the PACKAGE_GUID for a Windows project and pass the analysis on upload to dev.windows.com. As expected when querying the appID using Ti.App.id the original ID specified is returned.
       <windows>
               <id>64475EwanHarris.pkgTest2</id>
       </windows>
       
    Closing ticket

JSON Source