Virtual keyboard for Angular on mobile devices - android

I am struggeling on a question of my client to use a custom keyboard on my webapplication on a mobile device. That keyboard should only have all the digits, a dot, a backspace and an enter. Nothing more, nothing less.
I know you can use the different HTML5 input types (tel, number,...) to get a different keyboard of the Mobile Operating System, but these keyboards are different on each Mobile Operating System (Android, IOS, Windows Mobile): http://mobileinputtypes.com/ - Using the type 'tel' on IOS is ok, but on android I get a whole lot of other options that are not necessary. Same goes for 'number'...
I know it is not possible to customize the default keyboard of an Mobile Operating System.
I have found the plugin http://the-darc.github.io/angular-virtual-keyboard/ that at first sight does the job (look at the Numeric keyboard with customized css example). The only problem is that on mobile the default keyboard of the Mobile Operating System always pops up.
Is there a way to not show the default Keyboard or are there any other options that you can think of?
Thanks for the help, much appreciated!

Related

Cannot change language through the Android emulator physical keyboard

I have setup an Android API 30 emulator (from Android Studio), where I have installed two physical keyboard layouts. According to the system, I should be able to switch languages via Control+space. But that does not work.
I've tried:
Changing the "send keyboard shortcuts" to "virtual device" - effectively disables multi-touch but that's it.
Installed tons of different apps (including Hackers Keyboard) but saw no difference at all - seems they only work for the soft keyboard
I tried changing the kcm keyboard file from open source projects (and it worked well for changing e.g. "a" to "9") but I could not make for instance Shift+space to execute a language switch fallback
I even tried to write apps but I am not sure where to start (and from my experience with the other apps I tried, I am not sure if this will work at all)
Any ideas what else I can do?
I ended up using Android x86. The control+space works there just fine.

How do I automatically change my mobile keyboard according to application?

I want to make an application to automatically change my mobile keyboard according to application. My mobile default keyboard will change according to application, such as:
I want to use "Ridmik Keyboard" with Facebook or want to use "Swift keyboard" with Google play. Is it possible ?
I'm pretty sure that it's not possible. The only way you can change the keyboard is by asking the user to do so from the device's settings. Automatically changing the keyboard would be a major security hole, as a malicious keyboard could track passwords, for example.
Alternatively, you could ask the user to select a keyboard by calling startActivity(new Intent(android.provider.Settings.ACTION_INPUT_METHOD_SETTINGS));, and you can detect when a certain application is launched by sniffing into the LogCat.
If you are willing to root your device there are at least two solutions in the Google Play store that claim to do what you want: Keyboard Manager and Keyboard Master.
For non-rooted devices, there is Keyboard Manager Plus - however you should be aware that it flashes the keyboard picker on the screen as it automatically changes the keyboard. If you can live with that, that's a possible solution for you without rooting.
Caveat: I have not tried these myself. I am researching the issue and I do not have the option of rooting the device and I cannot live with the flashing. However, I've taken a pretty close look at all three of the above and they are the closest I've found to answering your question.

Force android to display email type keyboard in HTML5 page based web application

I have designed an HTML5 page which consists of a input box of type email. This HTML5 page will be displayed in Android application in a webview.
<input type="email" autofocus id="emailid"/>
The problem I'm facing is that Android doesn't show the email type keyboard which has the "#" and ".com" symbol by default.
How to force Android to display email type keyboard using any of these?
Thanks in advance :)
Currently, HTML5 is not fully supported on devices running 2.2 or below.
These are not supported:
input type=search
input type=tel
input type=url
input type=email
input type=datetime
input type=date
input type=month
input type=week
input type=time
input type=datetime-local
input type=range
input type=color
input type=checkbox
input type=image
textarea
select
datalist
keygen
output
progress
field validation
form validation
APIs
Spellcheck attribute
Session history
Geolocation
Device Orientation
FileReader API
Local Storage
Access the camera
Full Screen
And the confirmation: http://www.petefreitag.com/item/768.cfm
Try running your app on ICS or JB and it should work.
Try to detect version of Android OS on server and to the next:
1) if OS = ICS or above => use native html 5
2) if OS < ICS => show custom html keyboard
Also for OS < ICS in your app disable soft keyboard.
Keyboards are completely pluggable in Android - and therefore somewhat unpredictable. Device manufacturers almost always ship a custom keyboard (which can introduce problems, For example: I've seen some HTC keyboards not handle IME_ACTIONS). Also, users are free to download and use many different keyboards from the Play Store. Certain keyboards may not have an email style - maybe because the developers didn't think of it, or maybe because it's not appropriate. For instance: Something like Graffiti keyboard might legitimately ignore the email style completely?
I believe the best you can do is handle the cases that are supported. If >=ICS supports the input type="email" and older versions don't, at least over time your user base should shift towards a higher percentage of users getting the behavior you want.
I don't know what your app looks like, but another option if you really want the # sign and .com keys to be visible would be to use a hybrid approach where you add only those keys to your html and allow users to tap those or use the normal pluggable Android keyboard for everything else (or # signs and .com's also - if their keyboards include it)

Detecting if keys are available in onscreen keyboard of mobile device

I'm adding some mobile usability optimisations to our site. As part of this I am tweaking the type attribute of textfields, to give the user the best input tools for the expected data type.
One issue I have come up against in touchscreen mobile devices is that browsers on different OSes, and even different browsers on the same OS, show different onscreen keyboards when input type="number" is used.
Safari on iOS 4.3.3 (iPhone 4) and Chrome on Android 2.3.4 include a decimal point, but Firefox on Android 2.3.4 does not.
I have tried adding the step attribute (step="0.1") with no improvement in Firefox.
If I cannot show the decimal point I will need to show Firefox the full QWERTY keyboard, which is obviously not going to make for the best user experience. It also raises the issue of browser/device sniffing. Either I'll need to make QWERTY the default, and show the numberpad to the handful of devices I can actually test on, or make numberpad the default, and switch back to QWERTY on devices which I know this will break on, the latter option being far less robust as I cannot test on every device ever made.
Testing for support for input type="number" is not a fix, as obviously the browser does support the element, it just doesn't offer enough keyboard options to enter all number types.
So.. I was wondering if anyone knew of a way to test for the presence of a certain key (such as the decimal point) in the keyboard the browser/OS assigns to the input type, and/or if anyone else has some better suggestions, as I'm quite new to mobile devices.
I should also mention that I am using JavaScript here, as this is a website, not a native App.
Thanks :)
Unfortunately, firefox does not support numeric input type. However, you can still try using these additional HTML attributes for making an input field prompt the user for numeric input
inputmode='numeric'
pattern='[0-9]*' //this makes it show only the numbers 0-9 without all the slashes and dashes and everything. Ignore this if that's not what you want

Missing on-screen keyboard for Flash/Flex web application on Android?

I have an enterprise Flex web application, served up over https, that runs fine on Flash player 10.0 and beyond on a desktop computer/browser.
However, when I run it from my HTC Incredible with Android 2.2 the app loads fine, but there is no on-screen keyboard and so I cannot log in. I can see the blinking cursor inside the username and password text fields. I can switch between them. I can even hit the login button and see an authentication error!
According to Adobe this should Just Work. Any ideas? I wanna show off our spanking new app to strangers at the bus stop!
Seems the problem is different implementations of the keyboard in the browser. See the comment from Adobe here as they shut the bug as unfixable: https://bugs.adobe.com/jira/browse/FP-5704
I have the same problems on a Galaxy S2 - though manually forcing the keyboard up here isn't an option as the address bar automatically gains focus.
Mobile Text Input
Flash Player 10.1 provides support for use of native device virtual keyboards with TextField support if no physical keyboard is detected. A virtual keyboard is automatically raised and lowered in response to focus changes on text fields when editing text on mobile devices supporting a virtual keyboard to enable unobstructed and intuitive text editing. The focused text field is centered in the visible region of the page and appropriately zoomed/scrolled to ensure it is not obscured by the virtual keyboard. Upon screen rotation, incoming calls, or other system events, any already existing text input is retained. The virtual keyboard works with TextField but does not currently work with the Text Layout Framework or other Flash Text Engine text.
The spark components in Flex 4 are not currently optimized for mobile. The next release of Flex codenamed "Hero" will provide mobile optimized skins for the spark TextInput/TextArea components. These skins are based on TextField and they are also optimized for performance with ActionScript skins and a more appropriate default size. Text support in the current Hero preview release is minimal, but the final release will be more robust, for example supporting scrolling in a TextArea. Check out the spec for more information: http://opensource.adobe.com/wiki/display/flexsdk/Mobile+Text+Components
It's probably worthwhile to note that the mobile features in Hero are designed with standalone mobile applications in mind, not browser-based applications. That said you might be able to grab those mobile skins and try using them in a browser-based Flex application compiled with Hero.
have you tried republishing your work strictly for 10.1? i believe that any applications which support versions of Flash prior to 10.1 are seen as Flash Lite on mobile devices, which may (or may not) be the problem.
it's worth a try.
Not a programming solution, but long press on the menu button brings up the keyboard if it doesn't pop up by itself (at least on my HTC Desire, 2.2 android).
Device: Kindle Fire
I had the same problem. My mathlab uses flash for homework assignments, and I could not access my keyboard for input. Until I found this.
Download and Install "Keyboardflash_1.0.0.apk" on your Android device.
go to the flash program in your browser
run the "Game Keyboard" app and click "Tap here to call out keyboard after exit"
return to your browser
You will notice I did not perform the direction the app gives you because the kindle fire is not compatible with those steps. Maybe it is with your device.
You may have trouble getting this to work with a browser app like "Dolphin"
Your Welcome :)
and respect the developer
Gamepad is also on the android market.

Categories

Resources