How to display Unicode Characters in Android TextView? - android

My app works before with translation from English to Korean.
See screenshot below.
I don't have to configure things like right fonts among other things.
Now it won't work and would only show Latin based characters.
I know for sure that the API I use returns the translation I need since the correct translation shows on my logcat.
But android textView doesn't display it properly since I updated all of my android studio components such as the emulator. It doesn't work properly on API 17, 18 and 19 but works on API 16 which is rather odd since if it could work on API 16, it should work on much newer versions of android too. I've also Cold Boot all my emulators to reset it, but still no changes. It also works on API 21 as show below. But definitely not on API 17-19 as I've tested. :(. Please. help. Thanks.
[Edit]: I Changed the title from "How to display Korean-Chinese-Japanese Characters in TextView?" to what it is now since supporting most languages is under encoding foreign language in Unicode it seems.

After debugging for a couple hours more searching. It seems that the current updated Android emulators for API 17-19 are buggy. Since I noticed that it doesn't display Korean Characters not only my my app, but also everywhere else like my web browser.
The reason why my app displays unicode characters in an older android versions like Android 4.1. However, it turns out it could display Japanese Characters when I tried to translate to another language that is another Unicode character. It could also properly display japanese and chinese unicode characters in my browser.
I already created a fresh Android emulator for API 17-19, but it really didn't solved the problem. Installing a new keyboard didn't do the trick either. I could't not add another language too like japanese since its not in the options. But japanese works on the emulator, so I didn't bother trying to find one for Korean.
In the end, it turns out its really an emulator (Operating System related) problem and not an android app compatibility or problem on my code. Android 4.2-4.3 (API 17-18) is both Jelly Bean anyway. Since, it works on Android 4.1 that is Jelly Bean too, problems must be in the android image updates I had update a few days ago. for Android 4.4, must be the same case then.

Related

How to solve massive rendering problems in Android development

I'm currently working with Xamarin for developing an android app. The structure of the app is really simple yet but a big problem appeared concerning the rendering of my main page. First, it's important to know that I'm supposed to develop for target API 23 so Android 6.0.
And every time I test my application on my Android 6.0 device via USB-debugging the design is totally messed up with my only (!) button duplicated many times and the textViews mixed up over the screen (As shown in the picture link below).
Even though I am new to Xamarin and Android (and C#) I have my settings (as I think) in perfect order. The minimum API level is 21, the target SDK version 23 (Android 6.0), my device runs version 6.0.1, the target compiling framework in properties is set to 6.0, the manifest is set up as I mentioned before and even my "Designer" window with the layouts .axml is set to v23.
I really don't know what to try next, because I want to start coding further. Would be nice if sb could help me out with that.
I have already tested the code of the app on a different API level (26 I think) and it worked perfectly fine with my Galaxy S9 in Debugger mode. Everything looked like it was designed in first place.
I also tried different AppThemes in Visual Studio but not one of the 7-8 I tried worked in any way different except for the colors.
The android app does only switch when clicking the button, texthttps://imgur.com/i0xChVniew 2 into the current date and time. I'm really sure, that my code is not the problem.
Picture: How it should look (In Xamarin)
Picture: How it looks on the phone

Missing Asian Characters on Android 5.0 Devices

I'm using Unity4.5.4 and NGUI 3.6, and want to support multi-languages.
When I try on devices using Android 4, it is totally fine. When I install the same build on Google Nexus 7 using Android 5.0, English version is fine, but almost all the Asian characters cannot be displayed(Chinese Korean Japanese). I tried different fonts(using Arial or load my own font from Resource folder), it didn't work either.
Does anybody encounter similar problem, or know how to deal with this problem? Thanks a lot!
It has to do with the image that you have flashed into your Android device.
Although the APIs for Android 5.0 are now final, the system image for
end-users is not available yet.
Assume everything is done correctly, once the end-user-system images are released your problem should be corrected.
Reference.
This is a bug in Unity. You may want to submit a bug report and wait for a patch release to fix it (though you used a preview image, it is also likely to happen on retail Android 5.0).
Edit: I tried on a Nexus Player, and the fonts were rendering just fine. Looks like Google forgot to add some fonts to the preview image. If you are experiencing this issue with a retail version of Android 5.0, please submit a bug for Unity.

How to check whether a unicode character can display well in an Android device

How can I know whether an unicode (\u263a) will displayed well in an Android device. I use robotto thin font (bundled together with APK). The character displayed well in my Nexus S 4.0, but not emulator 2.3
For instance, if ☺ cannot displayed well in an Android device, I will replace it with :)

In android phonegap application language (Indian language Hindi) font is worked in android emulator but it is not working in real device.

I created an android phonegap application which displays information in multiple languages like Hindi, Fijian, etc. Hindi language content displays properly in properly in emulator but it is not working on actual android device. It displays a small square box.
I'll explain the steps:
I used web font converter and converted de.ttf, it generated 3 files.
I copied all theses files to folder named "font" in my project directory.
I added font-face in css.
I called the font-face in a div and added Hindi text.
Thanks in advance.
I am guessing Android emulator does not display Hindi font answer shows the issue.
Problem with Hindi keyboard on Android 2.3 emulator is another duplicate.
From what I understand the Hindi is not implemented fully in older phones. It likely works in your emulator due to your emulator's operating system version being higher than the phone. I suggest you change create a new emulator image with the same version as phone and test it. If it does not work on emulator then bump the OS version up until it does. This will have to be your apps minimum OS version.
If for some reason at the same version the text does display correctly, then something else is going on.

Azerbaijani language support by Android 2.2?

According to this Azerbaijani language is not supported by Android 2.2 - however they claim "Note: Android supports more locales than are listed above.".
So how it is actually ? Is there support for Azerbaijani language? Are there issues writing applicaiton which have to display text in Azerbaijani?
Try just writing a test application that just displays some Azerbaijani text in Unicode. If it looks right, then your Android device has a Unicode font that includes the characters used in Azerbaijani.
If the text is not rendered correctly, then your problem will be adding the right font. On Mac OS X you would just drag-and-drop a font file into the right folder, but on Android you will need it installed in the operating system's display server. That might not be possible if you want to run on handsets that are locked down by their manufacturer.
If the font isn't there, maybe you can find a good Open Source Unicode font for Azerbaijani. File a feature request with the Android developers to get the font into the next release of Android. Unfortunately you'll have to wait a long time and will only work with recent releases.
If you're really desperate and you're willing to go to a lot of effort, you could build a font rendering engine into your application. I don't think that has to be as hard as it sounds. Then you will be able to run on any Android release and you won't have to wait around for the handset manufacturers to pick up the response to your feature request.
Locale.getAvailableLocales()
That method returns an array of all supported locales.

Categories

Resources