Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-15878] Android: Unable to create APK for store in non-English-language OS - invalid store password

GitHub Issuen/a
TypeBug
PriorityCritical
StatusClosed
ResolutionFixed
Resolution Date2013-12-07T00:23:49.000+0000
Affected Version/sn/a
Fix Version/s2013 Sprint 25, 2013 Sprint 25 Core, Release 3.2.0, Release 3.3.0
ComponentsAndroid, CLI
Labelsn/a
ReporterChristian Buente
AssigneeChris Barber
Created2013-12-02T12:13:51.000+0000
Updated2013-12-09T09:50:58.000+0000

Description

Steps to Reproduce

From build menu choose Package -> Android App Store Specifiy android sdk (e.g. Google APIs (Android 4.2.2)) and distribution location. Choose / create a valid keystore, enter the keystore password and key alias. Check that all fields are marked as valid. Hit publish

Actual Result

Build breaks with error: [ERROR] : Invalid '--store-password' value 'xxx'

Expected Result

Build process running till the end ending up in creation of a valid apk

Attachments

FileDateSize
.log2013-12-02T12:13:52.000+00000
diagnostic4971495263982833016.log2013-12-02T12:13:56.000+00003117

Comments

  1. Ingo Muschenetz 2013-12-02

    Can you please let us know the versions of the following?

    CLI

    Studio

    SDK

  2. Christian Buente 2013-12-03

    CLI: 3.2.0-beta Studio: 3.2.0.201311262027 SDK: 3.2.0.v20131126144841
  3. Lokesh Choudhary 2013-12-03

    I did some investigation & below are my findings:

    Package an app with a valid keystore password:

    The app is packaged successfully.

    Package an app with invalid/wrong keystore password:

    I get error :
    [ERROR] :  Invalid "--store-password" value "XXXX"

    Package an app with new keystore created from within studio:

    The app is packaged successfully.

    Environment:

    Appcel Studio : 3.2.0.201311272052 Ti SDK : 3.2.0.v20131127194046 Mac OSX : 10.8.5 Alloy : 1.3.0-beta CLI - 3.2.0-beta
  4. Christian Buente 2013-12-04

    Just tried it with the latest versions of Studio (3.2.0.201312031529) and SDK (3.2.0.v20131203104847) using an existing keystore and a newly created one. In both cases it ends up with the same error that the provided password is invalid. Building against current stable SDK 3.1.3GA works without any problems. I have even tried to build the package manually with cli whitout success. Build command (within project directory): ti build \ --platform android \ --target dist-playstore \ --output-dir ~/Desktop \ --keystore /Users/christian/Documents/Titanium/android/keystores/test \ --alias test \ --store-password test12 As you can see all necessary parameters are supplied but the build process breaks with message [ERROR] Keystore does not contain any certificates After validating the keystore manually with keytool and without finding any issues i did some further investigation on the build script itself (mobilesdk/osx/3.2.0.v20131203104847/android/cli/_build.js) and found the problem. It seems to be a problem with the system language. In my case German. Please have a look at the regex in line 733: var re = /Alias name\: (.+)/; While this regex works for English it does not work for German and other non english languages. In my case the genereated ouput does not contain lines starting with "Alias name". Instead the appropriated lines are starting with "Aliasname". Mind the non existing white space. For testing i have removed the white space and the build process end well. I hope that this information helps you to solve the bug.
  5. Ingo Muschenetz 2013-12-04

    Nope, great! This is actually a perfect report of what we just saw elsewhere yesterday. I'm curious to know if when the key tool command is invoked, you can pass specific US Java language settings: "There is also a -Jjavaoption option that may appear for any command. If it appears, the specified javaoption string is passed through directly to the Java interpreter. This option should not contain any spaces. It is useful for adjusting the execution environment or memory usage. For a list of possible interpreter options, type java -h or java -X at the command line." Settings: http://stackoverflow.com/questions/64038/setting-java-locale-settings
  6. Chris Barber 2013-12-06

    Master pull request: https://github.com/appcelerator/titanium_mobile/pull/5083 3.2.x pull request: https://github.com/appcelerator/titanium_mobile/pull/5084
  7. Shreya Chowbey 2013-12-09

    Verified as fixed using Mac 10.9 Appcelerator Studio, build: 3.2.0.201312081316 mobilesdk-3.2.0.v20131209000852-osx acs: 1.0.10 alloy: 1.3.0-beta npm: 1.3.2 titanium: 3.2.0-beta titanium-code-processor: 1.1.0-beta The app was successfully packaged and the build process ran successfully till the end with a valid APK creation.

JSON Source