Project Upgrade to 5.6 results in Android touch events not working

Project upgrade to 5.6 results in Android touch events not working.

Am in process of sanity checking upgrading an old test project, and packaging a blank test, but decided this is critical enough to warrant an immediate Question.

From a facebook post : " I had to delete all the config files and rebuild them, and now it’s working again." - Hmmm https://www.facebook.com/groups/uedevs/posts/2900599046807941

Tried out a small test project, no problem there. Investigations continue… Perhaps something changed in the PlayerController? Or Enhanced Input?

Hi Tuomas,

Which UE version were you upgradng from?

Best regards.

Thanks for bringing this to our attention. A source fix is available at https://github.com/EpicGames/UnrealEngine/commit/becac1d213e962d9887dc585ab86b79a7089cd6f.

Best regards.

5.5 to 5.6 ( source forks )

  • I am sanity checking with a EGS vanilla 5.6 upgrade next week
  • A more minimal testproject upgraded successfully ( just a level + ui buttons )
  • I have diffed android specific config files on the engine, but seen nothing suspicious

Enabling Bluetooth controllers seems to be a workaround fix. This setting is on by default in 5.6.1 BaseEngine.ini, and was false in our configs.

[/Script/AndroidRuntimeSettings.AndroidRuntimeSettings]

bAllowControllers=True

A friendly fellow in the discord has a source fix : https://github.com/EpicGames/UnrealEngine/commit/59a8c382ccc65f7503865d6aed2463a262a367bb

‎Engine/Source/Runtime/ApplicationCore/Private/Android/AndroidInputInterface.cpp‎
+1-1Lines changed: 1 addition & 1 deletion
Original file line number	Diff line number	Diff line change
[Content removed] InputDeviceTy
 
	// newly connected device is saved for now and will be validated in the next frame
	FAndroidInputDeviceInfo& AddedDeviceInfo = InputDeviceInfoMap.Add(DeviceId);
	- AddedDeviceInfo.DeviceState = AndroidEnableInputDeviceListener ? MappingState::ToActivate : MappingState::ToValidate;
	+ AddedDeviceInfo.DeviceState = (AndroidEnableInputDeviceListener && DeviceType == InputDeviceType::GameController) ? MappingState::ToActivate : MappingState::ToValidate;
	AddedDeviceInfo.DeviceType = DeviceType;
	AddedDeviceInfo.DeviceId = DeviceId;