{ "id": "125465", "key": "TIMOB-16330", "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": [ { "id": "15935", "description": "2014 Sprint 06", "name": "2014 Sprint 06", "archived": true, "released": true, "releaseDate": "2014-03-28" }, { "id": "15936", "description": "2014 Sprint 06 SDK", "name": "2014 Sprint 06 SDK", "archived": true, "released": true, "releaseDate": "2014-03-28" }, { "id": "15422", "description": "Release 3.3.0", "name": "Release 3.3.0", "archived": false, "released": true, "releaseDate": "2014-07-16" } ], "resolution": { "id": "2", "description": "The problem described is an issue which will never be fixed.", "name": "Won't Fix" }, "resolutiondate": "2014-03-26T22:58:52.000+0000", "created": "2014-01-27T21:18:29.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "module_android", "parity", "qe-closed-3.3.0", "qe-testadded", "regression" ], "versions": [ { "id": "14982", "description": "Release 3.2.0", "name": "Release 3.2.0", "archived": false, "released": true, "releaseDate": "2013-12-19" } ], "issuelinks": [ { "id": "37016", "type": { "id": "10000", "name": "Blocks", "inward": "is blocked by", "outward": "blocks" }, "inwardIssue": { "id": "129605", "key": "TISTUD-6360", "fields": { "summary": "Studio- packaging for Android App Store - [ERROR] java.lang.NullPointerException", "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" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2014-07-22T10:27:50.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": "10202", "name": "Android", "description": "Android Platform" } ], "description": "Android: app requires two back events to close main window.\r\n\r\nRegression.\r\n\r\nWorks in:\r\n\r\nAlloy 1.2.2\r\nTitanium SDK 3.1.3.GA\r\nAppcelerator Studio 3.1.3 Stable\r\nSamsung Galaxy S3 Mini 4.1.2\r\nOS X 10.9.1\r\n\r\nTest Steps:\r\n\r\n1. Package default alloy android app.\r\n2. Run app.\r\n3. Press device 'back'.\r\n\r\nResult:\r\n\r\nBackground image appears, app does not close. Workaround is to press 'back' twice.\r\n\r\nExpected Result:\r\n\r\nApp closes.", "attachment": [ { "id": "45406", "filename": "alloy_1.3.1-beta4.png", "author": { "name": "dhyde", "key": "dhyde", "displayName": "Dustin Hyde", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-01-27T21:18:29.000+0000", "size": 195552, "mimeType": "image/png" } ], "flagged": false, "summary": "Android: app requires two back events to close main window", "creator": { "name": "dhyde", "key": "dhyde", "displayName": "Dustin Hyde", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "dhyde", "key": "dhyde", "displayName": "Dustin Hyde", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "Alloy 1.3.0, 1.3.1-beta4\r\nTitanium SDK 3.2.0.GA, 3.2.1.v20140124163734\r\nAppcelerator Studio 3.2.0 Stable, 3.2.1.201401241158\r\nSamsung Galaxy S3 Mini 4.1.2\r\nOS X 10.9.1", "comment": { "comments": [ { "id": "289967", "author": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "body": "I can confirm that this is an issue. However, I see the same behavior with a TiClassic app. So, this isn't an Alloy problem.\n\nTesting methodology: I created two apps, one Alloy and one Classic. I compiled both using Alloy 1.3.0 / Ti3.2.0.GA. Both exhibit the behavior described (first tap of Back returns to splash screen, second exits app). I then compiled both using Alloy 1.2.2 / Ti3.1.2.GA. Both exit correctly on the first tap of the Back button.", "updateAuthor": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "created": "2014-01-28T14:24:19.000+0000", "updated": "2014-01-28T14:24:19.000+0000" }, { "id": "290086", "author": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "body": "This is expected behavior. Starting with 3.2.0.GA, all windows are backed by an activity. So if you open a window, you have an activity on top of the root activity. Hitting the 'back' button closes an activity, therefore you would need to click it twice to close the app.", "updateAuthor": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-01-28T21:41:28.000+0000", "updated": "2014-01-28T21:41:28.000+0000" }, { "id": "290088", "author": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "body": "But this really breaks user expectations. On the main screen of an app, users expect hitting Back will exit the app and return them to the home screen. I know that developers can add exitOnClose=true to their window definition to support this. However, this was never required before and will force developers to update all their apps. The platform should handle the special case of the first/primary window in the app.", "updateAuthor": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "created": "2014-01-28T21:51:05.000+0000", "updated": "2014-01-28T21:51:05.000+0000" }, { "id": "297306", "author": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "body": "[~vduggal] to create tickets on fragments which is the proper solution to this. In the meantime, we need to advertise the workaround for this by using exitOnClose=true more aggressively.", "updateAuthor": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-03-14T18:45:27.000+0000", "updated": "2014-03-14T18:45:27.000+0000" }, { "id": "298888", "author": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "updateAuthor": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-03-26T22:58:26.000+0000", "updated": "2014-03-26T22:58:26.000+0000" }, { "id": "302311", "author": { "name": "oromero", "key": "oromero", "displayName": "Olga Romero", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Packaged the default alloy app, using CLI command\r\n{code}\r\n ti build -p android -T dist-playstore\r\n{code} \r\n\r\nHad to press device \"back\" only once to close main window.\r\n\r\nAppcelerator Studio, build: 3.3.0.201404221437\r\nTitanium SDK, build 3.3.0.v20140422163054\r\nNode.JS Version: v0.10.13\r\nNPM Version: 1.3.2\r\n├── acs@1.0.14\r\n├── alloy@1.4.0-dev\r\n├── node-appc@0.2.0\r\n├── npm@1.3.2\r\n├── titanium@3.3.0-dev\r\n└── titanium-code-processor@1.1.1-beta1\r\nnpm -g ls titanium: /usr/local/lib\r\n└── titanium@3.3.0-dev (git://github.com/appcelerator/titanium.git#93414d143051df4578b7aa42670008e5ef02c422)\r\nDevice:\r\nNexus 4 Android version 4.2", "updateAuthor": { "name": "oromero", "key": "oromero", "displayName": "Olga Romero", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-04-24T00:01:26.000+0000", "updated": "2014-04-24T00:02:54.000+0000" } ], "maxResults": 7, "total": 7, "startAt": 0 } } }