{ "id": "63066", "key": "TIMOB-2434", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": { "id": "7", "description": "", "name": "Invalid" }, "resolutiondate": "2017-06-08T23:20:06.000+0000", "created": "2011-04-15T03:19:47.000+0000", "priority": { "name": "Low", "id": "4" }, "labels": [], "versions": [], "issuelinks": [], "assignee": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2017-06-08T23:20:06.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "{html}
EDIT: It took me an evening, but I found a\nfix/workaround for this issue. Read the post to see the steps I\ntook to fix it.
\nOriginal post:
\nTitanium doesn't detect my Iphone Developer Certificate. The\n\"Install Now\" button on the \"Run on Device\" tab is disabled. So I\ncan't install to my Iphone.
My name contains non-ascii characters and I think this could be\nthe reason it doesn't work. I have seen other tickets where people\nhave trouble because of non-ascii characters in their\ncertificates.
\nI have a proper working certificate and I can install to my\nIphone from XCode without problems. I have tried deleting and\nreinstalling both the WWDR and the Developer Certificate. I have a\nworking provisioning profile.
\nI'm using v. 1.2.1 of Titanium and the v. 4.2 Iphone SDK.
\nEDIT:
\nI checked the prerreq.py script and it seems the keychain dump\ndoes not work properly.
\nI stepped through the script and discovered that the functions\nlooking for the different certificate strings were not finding\nanything. A closer look revealed that the problem was with the\ninitial keychain dump.
\nI tried running the dump command from the script in the python\nshell:
\noutput = run.run(['security','dump-keychain'],False,False)
\n
\nThis should give a long string of keys and values, but it just\nreturn gives the first couple of rows from the keychain dump.To work around this I ran an ordinary keychain dump in\nTerminal
\nsecurity dump-keychain -d login.keychain
\n
\nand saved the output to a text file.I still can´t install to device though. It seems there is\na similar problem with reading the provisioning profile. I haven't\ntried to work around it yet.
\nEDIT 2:
\nI had made a mistake in reading the keychain file in the script.\nWhen I fixed that the certificates were detected in the Titanium\nGUI and the Install Now button was enabled!
\nHowever, when I click Install Now, I get a \"Install error\", so\nit still does not work. :(
\nEDIT 3:
\nThe build.log contains the following error:
\nException detected in script:
\nTraceback (most recent call last):
\nFile \"/Library/Application\nSupport/Titanium/mobilesdk/osx/1.4.2/iphone/builder.py\", line 994,\nin main
\nexecute_xcode(\"iphoneos%s\" % iphone_version,args,False)
\n
\nFile \"/Library/Application\nSupport/Titanium/mobilesdk/osx/1.4.2/iphone/builder.py\", line 780,\nin execute_xcode
\n\nfor arg in args: o.write(\" %s\\n\" % arg)
\n
\nUnicodeEncodeError: 'ascii' codec can't encode character u'\\xe4'\nin position 64: ordinal not in range(128)
\nEDIT 4 - the fix:
\nTraced that error to the following statement:
\no.write(\"Starting Xcode compile with the following arguments:\\n\\n\")\nfor arg in args: o.write(\" %s\\n\" % arg)
\n
\nThe o.write apparently does not honor the utf-8 encoding in the\nfile and crashes trying to print my name.
\nSince the line seemed to be just a log output i commented it out\nlike so:
\n#for arg in args: o.write(\" %s\\n\" % arg)
\n
\nAnd would you believe it...
\nNow it installs!
\nNow that wasn't so hard was it?
\nI hesitate to call this a fix, but at least it's a usable work\naround.
Happy Non-ASCII:ing to all my fellow Scandinavians (and the rest\ntoo of course)!
\n/Martin