I had this issue in an Ionic V1 / Angular 1.5 project. This fix worked for me:
window.addEventListener('native.keyboardshow', function () {
if ( document.activeElement != document.getElementById('my-input') && document.activeElement.nodeName != 'INPUT' ){
document.getElementById('my-input').focus()
}
});
When we tap the input, the keyboard comes up. We can then check if our input element is actually focused. If not, we manually focus it. If it's another input, we won't focus it.
I called this inside my component's $onInit function - make sure to remove the event listener when your component is destroyed with $onDestroy. This also assumes you're using the ionic-plugin-keyboard
plugin.
This works well with one input, but if you have multiple inputs on the same page, you will probably need additional logic to prevent your app from focusing on the wrong input when the keyboard opens.