I’m hitting a maddening bug:
When launching an Android activity from Unity, then **finish()**ing back to Unity – if you do this too many times, touch events are no longer recognized (e.g. Input.GetTouch shows no touches, even when there are some). This behavior persists until you kill the app.
Going between Android and Unity (often) is absolutely crucial to our app; there’s no possible way around that.
I can reproduce it consistently with a simple project:
APK: http://x.dzog.us/private/unitytouchfail/androidtouchtest.apk
Unity Project: http://x.dzog.us/private/unitytouchfail/AndroidTouchFail-unityproject.zip
Android Project: http://x.dzog.us/private/unitytouchfail/UnityTouchFail-androideclipse.zip
containing a button that launches an Android activity, which itself has a button to finish().
After 32 times I lose all touch ability in Unity – but everything else works.
This happens on every device I’ve tested: Nexus 4, Galaxy Nexus, LG Optimus, and various others. In Unity 3.5 and 4.
Has anyone seen this? Any clue as to what’s going on, or possible workarounds?