android中的阿拉伯语

时间:2010-12-21 10:29:27

标签: android arabic

android甚至在最后的版本2.3中仍然不完全支持阿拉伯语,也可能不在3.0中

我是程序员,如果我想让阿拉伯语支持如何开始使其完全支持阿拉伯语?

因为我发现像三星和HTC这样的公司为这些设备添加了完全的阿拉伯语支持,这意味着如果他对系统有很好的了解,每个人都可以添加支持。

4 个答案:

答案 0 :(得分:1)

Android 3.0 Honeycomb对阿拉伯语有官方原生支持。

来源:xda-developershttp://bit.ly/honeycomb-arabicArDroid

至于智能手机,CyanogenMod 7有decent Arabic support

答案 1 :(得分:1)

如果您想在您的Android设备上使用阿拉伯语,您可以使用基于Android姜饼(2.3)的CyanogenMod 7,他们在他们的rom中使用阿拉伯语shaper soyou可以随处读取阿拉伯语,并且在最新版本的cyanogen中他们添加了阿拉伯语键盘。

像HTC和samsaung这样的公司......为出口到MEA的设备提供了特殊的阿拉伯语空间,但它不支持,阿拉伯语OTA更新不会达到90%。

答案 2 :(得分:0)

我找到了几个尝试过的项目,也许你可以看看那些,看看究竟需要做什么

https://sites.google.com/a/ut.utm.edu/arabic-android/

答案 3 :(得分:0)

你可以使用Alefonizer ..它的lib在不支持阿拉伯语的Android设备中呈现阿拉伯字符

这是一个很好的

package org.alefon.com;


import www.alefon.com.alefonizerArarbic.AlfnFixText;
import www.alefon.com.alefonizerArarbic.AlfnLining;
import android.app.Activity;
import android.os.Bundle;
import android.view.ViewTreeObserver;
import android.view.ViewTreeObserver.OnGlobalLayoutListener;
import android.widget.TextView;



public class MainActivity extends Activity {
    private TextView tv;
private AlfnFixText alfntx;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);  
        alfntx = new AlfnFixText(true); 
        tv = (TextView) findViewById(R.id.tx); 
        String text = "قال ابن رشد:الله ليمكن ٔان يعطينا عقول ويعطينا شرأيع مخالفة لها";   

        tv.setText(text); 

        ViewTreeObserver vto = tv.getViewTreeObserver(); 
        vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() { 
            @Override
            public void onGlobalLayout() {

                AlfnLining alflining = new AlfnLining();
                String rlines = alflining.getTextLines(tv.getWidth(),
                        tv.getPaint(), tv.getText().toString(), true);
                if (rlines != null) {
                    String lli[] = rlines.split("\n");
                    String fn = "";
                    for (String st : lli) {

                        try {
                            st = alfntx.getFixedText(st);
                        } catch (Exception e) {

                            e.printStackTrace();
                        }
                        fn += st + "\n";
                    }
                    tv.setText(fn);
                }
                ViewTreeObserver obs = tv.getViewTreeObserver();
                obs.removeGlobalOnLayoutListener(this);
            }
        });
    }

}

请记住,您需要使用包含阿拉伯字符和字母的字体。阿拉伯语的OTL ..i.e。 Arial ..

====== update =======

Android studio使用UTF-8作为文件编码..但您可以更改它,请参阅屏幕截图:

enter image description here

祝你好运,