Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-24253] Android: androidback event not working in Ti SDK 6.0.0.GA

GitHub Issuen/a
TypeBug
PriorityCritical
StatusClosed
ResolutionFixed
Resolution Date2017-01-28T00:41:06.000+0000
Affected Version/sRelease 6.0.0
Fix Version/sRelease 6.0.2
ComponentsAndroid
LabelsAndroid, backbutton
Reporter Ricardo Ramirez
AssigneeGary Mathews
Created2016-12-21T15:40:33.000+0000
Updated2017-03-08T03:54:32.000+0000

Description

Issue Description

Hi, To prevent window close on android hardware back click, customer have been using "andoridback" event. This was working properly till 5.5.1.GA. With 6.0.0.GA, even though this event is fired, it is not preventing the window close.

Steps to Replicate

Download the attached project

Make sure is running SDK 6.0.0GA (works on 5.5.1.GA)

Run

Click on Hello World to open a new screen

Click the back button

If the project is built with 5.5.1.GA, new screen will not close on hardware back click. But the new screen will close if the project is built with 6.0.0.GA.

Attachments

FileDateSize
TestAndroidBack.zip2016-12-21T15:40:06.000+000010474697

Comments

  1. Gary Mathews 2016-12-27

    master: https://github.com/appcelerator/titanium_mobile/pull/8715
  2. Samir Mohammed 2017-01-04

    Verified fixed, screen does not close when the back button is pressed when using androidback event. *Environement*
       Appcelerator Command-Line Interface, version 6.1.0
       Android 7.1 (Google Nexus 6P)
       Operating System Name: Mac OS X El Capitan
       Operating System Version: 10.11.6
       Node.js Version: 4.6.0
       npm: 4.2.8
       Titanium SDK Version: 6.1.0.v20170103153718
       Xcode: 8.0
       Appcelerator Studio: 4.8.1.201612050850
       
  3. Michael Gangolf 2017-01-21

    Using a camera with an overlay I'll get the following error in 6.1.0:
       ERROR] InputEventSender: Exception dispatching finished signal.
       [ERROR] E/MessageQueue-JNI: Exception in MessageQueue callback: handleReceiveCallback
       [ERROR] E/MessageQueue-JNI: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean org.appcelerator.titanium.proxy.TiWindowProxy.hasProperty(java.lang.String)' on a null object reference
       [ERROR] E/MessageQueue-JNI:     at org.appcelerator.titanium.TiBaseActivity.onBackPressed(TiBaseActivity.java:859)
       [ERROR] E/MessageQueue-JNI:     at ti.modules.titanium.media.TiCameraActivity.onBackPressed(TiCameraActivity.java:935)
       [ERROR] E/MessageQueue-JNI:     at android.app.Activity.onKeyUp(Activity.java:2494)
       [ERROR] E/MessageQueue-JNI:     at android.view.KeyEvent.dispatch(KeyEvent.java:2686)
       [ERROR] E/MessageQueue-JNI:     at android.app.Activity.dispatchKeyEvent(Activity.java:2747)
       [ERROR] E/MessageQueue-JNI:     at org.appcelerator.titanium.TiBaseActivity.dispatchKeyEvent(TiBaseActivity.java:888)
       [ERROR] E/MessageQueue-JNI:     at android.support.v7.view.WindowCallbackWrapper.dispatchKeyEvent(WindowCallbackWrapper.java:50)
       [ERROR] E/MessageQueue-JNI:     at android.support.v7.app.AppCompatDelegateImplBase$AppCompatWindowCallbackBase.dispatchKeyEvent(AppCompatDelegateImplBase.java:224)
       [ERROR] E/MessageQueue-JNI:     at com.android.internal.policy.PhoneWindow$DecorView.dispatchKeyEvent(PhoneWindow.java:2323)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$ViewPostImeInputStage.processKeyEvent(ViewRootImpl.java:4323)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4285)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3816)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3875)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3841)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3971)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3849)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4028)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3821)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3875)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3841)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3849)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3821)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3875)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3841)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4004)
       [ERROR] E/MessageQueue-JNI:     at android.view.ViewRootImpl$ImeInputStage.onFinishedInputEvent(ViewRootImpl.java:4177)
       [ERROR] E/MessageQueue-JNI:     at android.view.inputmethod.InputMethodManager$PendingEvent.run(InputMethodManager.java:2374)
       [ERROR] E/MessageQueue-JNI:     at android.view.inputmethod.InputMethodManager.invokeFinishedInputEventCallback(InputMethodManager.java:1983)
       [ERROR] E/MessageQueue-JNI:     at android.view.inputmethod.InputMethodManager.finishedInputEvent(InputMethodManager.java:1972)
       [ERROR] E/MessageQueue-JNI:     at android.view.inputmethod.InputMethodManager$ImeInputEventSender.onInputEventFinished(InputMethodManager.java:2340)
       [ERROR] E/MessageQueue-JNI:     at android.view.InputEventSender.dispatchInputEventFinished(InputEventSender.java:141)
       [ERROR] E/MessageQueue-JNI:     at android.os.MessageQueue.nativePollOnce(Native Method)
       [ERROR] E/MessageQueue-JNI:     at android.os.MessageQueue.next(MessageQueue.java:323)
       [ERROR] E/MessageQueue-JNI:     at android.os.Looper.loop(Looper.java:144)
       [ERROR] E/MessageQueue-JNI:     at android.app.ActivityThread.main(ActivityThread.java:5821)
       [ERROR] E/MessageQueue-JNI:     at java.lang.reflect.Method.invoke(Native Method)
       [ERROR] E/MessageQueue-JNI:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:797)
       [ERROR] E/MessageQueue-JNI:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687)
       
       
    Test app:
       var win = Titanium.UI.createWindow();
       var imageView = Ti.UI.createImageView({
           height: Ti.UI.FILL,
           width: Ti.UI.FILL
       });
       
       var btn = Ti.UI.createButton({
           title: "Cam"
       });
       win.add(btn);
       
       var overlay = Ti.UI.createView({});
       var btn2 = Ti.UI.createButton({
           title: "take image"
       });
       btn2.addEventListener("click",function(e){
           Ti.Media.takePicture();
       })
       overlay.add(btn2)
       
       btn.addEventListener("click", function(e) {
           console.log("----------------------------start camera------------------------");
           Titanium.Media.showCamera({
               overlay: overlay,
               success: function(event) {
                     imageView.image = f.nativePath;
               },
               cancel: function() {     Ti.API.info('#### Camera Cancel');    },
               error: function(error) {},
               allowEditing: true
           });
       })
       win.add(imageView);
       win.addEventListener("open", function() {
       
       });
       win.open();
       
    When the camera view is open press back Device: HTC A9 Ti 6.0.1.GA is working fine
  4. Hans Knöchel 2017-01-23

    PR (6_0_X): https://github.com/appcelerator/titanium_mobile/pull/8775
  5. Hans Knöchel 2017-01-23

    Reopening for the patch-PR provided by [~michael], thank you! PR (master): https://github.com/appcelerator/titanium_mobile/pull/8779 PR (6_0_X): https://github.com/appcelerator/titanium_mobile/pull/8780
  6. Lokesh Choudhary 2017-01-24

    [~hansknoechel], I see the fix in SDK 6.0.2.v20170123140026 & 6.1.0.v20170123141052 but, I can still reproduce the camera issue. Appc Studio : 4.8.1.201612050850 Mac OS Version : 10.12.2 Xcode Version : Xcode 8.2.1 Build version 8C1002 Appc CLI AND Appc NPM : {"NPM":"4.2.9-1","CLI":"6.1.0"} Ti CLI : 5.0.11 Alloy : 1.9.5 Node : v4.6.0
  7. Michael Gangolf 2017-01-24

    @lchoudhary are you sure that my fix was included in that version? Looking at travis it says the version should be 6.0.2.v20170123204635
  8. Lokesh Choudhary 2017-01-24

    [~michael], [~hansknoechel], I see this code for the fix on line no 859 of the TiBaseActivity.class file in both the SDK's:
        if ((topWindow != null) || ((!topWindow.hasProperty("onBack")) && (!topWindow.hasListeners("androidback"))))
       
    Anyhow I will check it again with the latest build. *UPDATE:* Travis says the build 6.0.2.v20170123204635 has been built but I do not see it on the builds page nor I can get it the CLI. I checked with latest master 6.1.0.v20170124071525 & my app still crashes with error:
       [ERROR] :  TiApplication: (main) [3907,6481] Sending event: exception on thread: main msg:java.lang.RuntimeException: Unable to resume activity {com.app.timob24253/org.appcelerator.titanium.TiActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean org.appcelerator.titanium.proxy.ActivityProxy.fireSyncEvent(java.lang.String, java.lang.Object)' on a null object reference; Titanium 6.1.0,2017/01/24 07:21,undefined
       [ERROR] :  TiApplication: java.lang.RuntimeException: Unable to resume activity {com.app.timob24253/org.appcelerator.titanium.TiActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean org.appcelerator.titanium.proxy.ActivityProxy.fireSyncEvent(java.lang.String, java.lang.Object)' on a null object reference
       [ERROR] :  TiApplication: 	at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3103)
       [ERROR] :  TiApplication: 	at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3134)
       [ERROR] :  TiApplication: 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1388)
       [ERROR] :  TiApplication: 	at android.os.Handler.dispatchMessage(Handler.java:102)
       [ERROR] :  TiApplication: 	at android.os.Looper.loop(Looper.java:148)
       [ERROR] :  TiApplication: 	at android.app.ActivityThread.main(ActivityThread.java:5417)
       [ERROR] :  TiApplication: 	at java.lang.reflect.Method.invoke(Native Method)
       [ERROR] :  TiApplication: 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
       [ERROR] :  TiApplication: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
       [ERROR] :  TiApplication: Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean org.appcelerator.titanium.proxy.ActivityProxy.fireSyncEvent(java.lang.String, java.lang.Object)' on a null object reference
       [ERROR] :  TiApplication: 	at org.appcelerator.titanium.TiActivity.onResume(TiActivity.java:55)
       [ERROR] :  TiApplication: 	at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1258)
       [ERROR] :  TiApplication: 	at android.app.Activity.performResume(Activity.java:6327)
       [ERROR] :  TiApplication: 	at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3092)
       [ERROR] :  TiApplication: 	... 8 more
       
    *EDIT* : Ignore my above comment about failing with latest master as travis says the build has failed: https://travis-ci.org/appcelerator/titanium_mobile/builds/194570882
  9. Michael Gangolf 2017-01-24

    That's correct. But I think the build you've tested was built before it was included. Or did you create an own version from source?
  10. Andy Waldman 2017-01-24

    Tuesday 24th January 2017 Environment: Appcelerator Command-Line Interface, version 6.1.0 Android 7.1 (Google Pixel) Operating System Name: MacOS Sierra Operating System Version: 10.12.1 Node.js Version: 4.5.0 NPM: 4.2.8 Appc NPM: 4.2.8 Titanium SDK Version: 6.0.2.v20170123062940 Xcode: 8.2.1 Studio Build: 4.8.1.201612050850 Step 1) Download the provided application (TestAndroidBack) Step 2) Update Guid and set SDK to 6.0.2 Step 3) Run Application and press "hello world" Step 4) After being taken to the next screen with a yellow background, I pressed the hardware back button. Step 5) Observations that the application stayed on that page and the app stayed open This Verified that the ticket is still fixed! Step 7) Run the same application after switching SDK to 6.0.0.GA to verify i can reproduce the error before confirming that the ticket is indeed closed . Step 8) After testing the application in the above the SDK the application and can confirm that when clicking the back button once progressing to the yellow screen, the application fails to stay on that page and does go back, meaning I have recreated the issue From the above steps i can confirm this ticket is closed for 6.0.2.
  11. Michael Gangolf 2017-01-24

  12. Andy Waldman 2017-01-24

    However after looking at the camera issue above, the application crashes SDK: 6.0.2.v20170123140026 app.js:
        var win = Titanium.UI.createWindow();
        var imageView = Ti.UI.createImageView({
            height: Ti.UI.FILL,
            width: Ti.UI.FILL
        });
         
        var btn = Ti.UI.createButton({
            title: "Cam"
        });
        win.add(btn);
         
        var overlay = Ti.UI.createView({});
        var btn2 = Ti.UI.createButton({
            title: "take image"
        });
        btn2.addEventListener("click",function(e){
            Ti.Media.takePicture();
        })
        overlay.add(btn2)
         
        btn.addEventListener("click", function(e) {
            console.log("----------------------------start camera------------------------");
            Titanium.Media.showCamera({
                overlay: overlay,
                success: function(event) {
                      imageView.image = f.nativePath;
                },
                cancel: function() {     Ti.API.info('#### Camera Cancel');    },
                error: function(error) {},
                allowEditing: true
            });
        })
        win.add(imageView);
        win.addEventListener("open", function() {
         
        });
        win.open();
        
    as a result i will reopen the Ticket
  13. Lokesh Choudhary 2017-01-24

    To sum up: 1. Build 6.0.2.v20170124145857 is failing with the same original logs as Michael G even though I can see the fix in it.
        [ERROR] :  InputEventSender: Exception dispatching finished signal.
        [ERROR] :  E/MessageQueue-JNI: Exception in MessageQueue callback: handleReceiveCallback
        [ERROR] :  E/MessageQueue-JNI: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean org.appcelerator.titanium.proxy.TiWindowProxy.hasProperty(java.lang.String)' on a null object reference
        [ERROR] :  E/MessageQueue-JNI: 	at org.appcelerator.titanium.TiBaseActivity.onBackPressed(TiBaseActivity.java:859)
        [ERROR] :  E/MessageQueue-JNI: 	at ti.modules.titanium.media.TiCameraActivity.onBackPressed(TiCameraActivity.java:932)
        [ERROR] :  E/MessageQueue-JNI: 	at android.app.Activity.onKeyUp(Activity.java:2483)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.KeyEvent.dispatch(KeyEvent.java:2664)
        [ERROR] :  E/MessageQueue-JNI: 	at android.app.Activity.dispatchKeyEvent(Activity.java:2736)
        [ERROR] :  E/MessageQueue-JNI: 	at org.appcelerator.titanium.TiBaseActivity.dispatchKeyEvent(TiBaseActivity.java:888)
        [ERROR] :  E/MessageQueue-JNI: 	at android.support.v7.view.WindowCallbackWrapper.dispatchKeyEvent(WindowCallbackWrapper.java:50)
        [ERROR] :  E/MessageQueue-JNI: 	at android.support.v7.app.AppCompatDelegateImplBase$AppCompatWindowCallbackBase.dispatchKeyEvent(AppCompatDelegateImplBase.java:224)
        [ERROR] :  E/MessageQueue-JNI: 	at com.android.internal.policy.PhoneWindow$DecorView.dispatchKeyEvent(PhoneWindow.java:2310)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$ViewPostImeInputStage.processKeyEvent(ViewRootImpl.java:4127)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4089)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3642)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3695)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3661)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3787)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3669)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3844)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3642)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3695)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3661)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3669)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3642)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3695)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3661)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3820)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.ViewRootImpl$ImeInputStage.onFinishedInputEvent(ViewRootImpl.java:3981)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.inputmethod.InputMethodManager$PendingEvent.run(InputMethodManager.java:2253)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.inputmethod.InputMethodManager.invokeFinishedInputEventCallback(InputMethodManager.java:1874)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.inputmethod.InputMethodManager.finishedInputEvent(InputMethodManager.java:1865)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.inputmethod.InputMethodManager$ImeInputEventSender.onInputEventFinished(InputMethodManager.java:2230)
        [ERROR] :  E/MessageQueue-JNI: 	at android.view.InputEventSender.dispatchInputEventFinished(InputEventSender.java:141)
        [ERROR] :  E/MessageQueue-JNI: 	at android.os.MessageQueue.nativePollOnce(Native Method)
        [ERROR] :  E/MessageQueue-JNI: 	at android.os.MessageQueue.next(MessageQueue.java:323)
        [ERROR] :  E/MessageQueue-JNI: 	at android.os.Looper.loop(Looper.java:135)
        [ERROR] :  E/MessageQueue-JNI: 	at android.app.ActivityThread.main(ActivityThread.java:5417)
        [ERROR] :  E/MessageQueue-JNI: 	at java.lang.reflect.Method.invoke(Native Method)
        [ERROR] :  E/MessageQueue-JNI: 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
        [ERROR] :  E/MessageQueue-JNI: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
        
    2. Master 6.1.0.v20170124145731 fails due to other reason probably due to TIMOB-20459 with logs:
        [ERROR] :  TiApplication: (main) [6677,6677] Sending event: exception on thread: main msg:java.lang.RuntimeException: Unable to resume activity {com.app.zprodclassic/org.appcelerator.titanium.TiActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean org.appcelerator.titanium.proxy.ActivityProxy.fireSyncEvent(java.lang.String, java.lang.Object)' on a null object reference; Titanium 6.1.0,2017/01/24 14:58,undefined
        [ERROR] :  TiApplication: java.lang.RuntimeException: Unable to resume activity {com.app.zprodclassic/org.appcelerator.titanium.TiActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean org.appcelerator.titanium.proxy.ActivityProxy.fireSyncEvent(java.lang.String, java.lang.Object)' on a null object reference
        [ERROR] :  TiApplication: 	at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3103)
        [ERROR] :  TiApplication: 	at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3134)
        [ERROR] :  TiApplication: 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1388)
        [ERROR] :  TiApplication: 	at android.os.Handler.dispatchMessage(Handler.java:102)
        [ERROR] :  TiApplication: 	at android.os.Looper.loop(Looper.java:148)
        [ERROR] :  TiApplication: 	at android.app.ActivityThread.main(ActivityThread.java:5417)
        [ERROR] :  TiApplication: 	at java.lang.reflect.Method.invoke(Native Method)
        [ERROR] :  TiApplication: 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
        [ERROR] :  TiApplication: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
        [ERROR] :  TiApplication: Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean org.appcelerator.titanium.proxy.ActivityProxy.fireSyncEvent(java.lang.String, java.lang.Object)' on a null object reference
        [ERROR] :  TiApplication: 	at org.appcelerator.titanium.TiActivity.onResume(TiActivity.java:55)
        [ERROR] :  TiApplication: 	at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1258)
        [ERROR] :  TiApplication: 	at android.app.Activity.performResume(Activity.java:6327)
        [ERROR] :  TiApplication: 	at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3092)
        [ERROR] :  TiApplication: 	... 8 more
        
  14. Gary Mathews 2017-01-25

  15. Lokesh Choudhary 2017-01-26

    Verified the fix is present in SDK 6.1.0.v20170126102557. Waiting for the fix for 6.0.2 branch.
  16. Gary Mathews 2017-01-26

    master: https://github.com/appcelerator/titanium_mobile/pull/8796 6_0_X: https://github.com/appcelerator/titanium_mobile/pull/8797 [~michael] The 6_0_X fix https://github.com/appcelerator/titanium_mobile/pull/8780/files has a mistake and should have been ==, I've amended that in my 6_0_X PR. Which is why the bug was still reproducible on 6.0.2. Fix for:
        java.lang.NullPointerException: Attempt to invoke virtual method 'boolean org.appcelerator.titanium.proxy.TiWindowProxy.hasProperty(java.lang.String)' on a null object reference
        
  17. Michael Gangolf 2017-01-27

    [~gmathews] Thanks for the fix! I shouldn't use the edit function on github and create patches there, stupid typo!
  18. Lokesh Choudhary 2017-01-30

    Verified the fix is present in SDK 6.0.2.v20170130045621. Closing.
  19. Muhammad Ahmed Fahad 2017-03-08

    Need to make-up your mind as to whether overriding the back button needs to happen via androidback or http://docs.appcelerator.com/platform/latest/#!/api/Titanium.UI.Window-property-onBack. This request reverts to old behaviour!
  20. Muhammad Ahmed Fahad 2017-03-08

JSON Source