Runtime error [no kernel image is available for execution on the device]

That is odd, maybe its a 3.4 issue. If it was me I would check the values returned inside
isDeviceCompatible() as I described here.