當前位置:首頁 » 安卓系統 » android新語言

android新語言

發布時間: 2022-01-17 20:00:21

Ⅰ 如何向android的setting語言列表中添加一門語言

第一種:修改配置文件
位置:build/target/proct/languages_full.mk| languages_small.mk,這兩個文件里頭,有PRODUCT_LOCALES := en_US en_GB fr_FR it_IT es_ES es_US 這樣的片段,其實setting中語言選擇列表的數據源頭就來源於此,既然找到了源頭,那隻要在之後加上想要的語言即可,比如要加越南語 只要在後面加上 「vi_VN」即可。裡面都有PRODUCT_LOCALES :=這樣的片段,從命名上也可發現一個full一個small,當不需要更多的語言時候,那languages_small.mk裡面的語言就可以滿足,而且語言少,生成的image所佔用的空間也會相對小些,是根據同目錄下full.mk里的注釋「Get a list of languages. We use the small list to save space on smaller devices.」。
一個full.mk的文件,這裡面有這樣的片段:$(call inherit-proct, build/target/proct/languages_small.mk),後者路徑就是我們要設置的地方。好了,改好後,得整個make下,好多模塊都是重新編譯
第二種:編碼方式修改
Android里一個listview會對應一個數據數組,那隻需在這個數組里按格式添加所需要的數據就行了,目標是com.android.settings.LocalePicker.java,在該文件133行位置做如下修改:
mLocales = new Loc[finalSize+1];
for (int i = 0; i < finalSize ; i++) {
mLocales = preprocess;
}
Locale temp = new Locale("vi", "VN");
mLocales[finalSize] =new Loc(toTitleCase(temp.getDisplayLanguage(temp)), temp);

安卓系統語言添加

雖然Android從2.3開始已經支持50種以上的語言,但是不是每種語言都有字體可以顯示。遇到一個新需求,有客戶要求對hindi語言的支持。於是上網找了一些資料,發現網上介紹的大部分是如何替換默認字體,就是替換./frameworks/base/data/fonts/DroidSansFallback.ttf,但是替換完之後,中文就無法正常顯示。其實只要有下面幾個步驟,就可以實現新曾加一種語言的顯示支持:
1. 需要有可以顯示hindi語言的字體,我在網上下載了一個:DroidHindi.ttf
2. 需要修改的地方主要有
1) 將下載的字體文件拷貝到:./frameworks/base/data/fonts/
2) 修改./frameworks/base/data/fonts/Android.mk,將DroidHindi.ttf添加到_from:

_from := \
DroidSans.ttf \
DroidSans-Bold.ttf \
DroidSansArabic.ttf \
DroidSansHebrew.ttf \
DroidSansThai.ttf \
DroidHindi.ttf \
DroidSerif-Regular.ttf \
DroidSerif-Bold.ttf \
DroidSerif-Italic.ttf \
DroidSerif-BoldItalic.ttf \
DroidSansMono.ttf \
Clockopia.ttf

3) Hindi的語言代碼是hi_IN,修改./device/qcom/common/common.mk,將hindi的語言代碼加進去,這樣在你的設置->語言和鍵盤->選擇語言裡面就可以看見hindi語言了:

PRODUCT_LOCALES := en_US en_GB es_ES es_US fr_FR zh_CN zh_TW hi_IN it_IT pt_PT ru_RU

4) 修改./external/skia/src/ports/SkFontHost_android.cpp,將DroidHindi.ttf加進去。網上介紹的很多方法都沒有提到這一步,如果沒有這一步的話,添加的語言是不生效的,顯示的是亂碼,因為android無法找到hindi語言可以顯示的字體,還是會選擇默認字體去顯示。修改的地方為:

/* Fonts must be grouped by family, with the first font in a family having the
list of names (even if that list is empty), and the following members having
null for the list. The names list must be NULL-terminated
*/
static const FontInitRec gSystemFonts[] = {
{ "DroidSans.ttf", gSansNames },
{ "DroidSans-Bold.ttf", NULL },
{ "DroidSerif-Regular.ttf", gSerifNames },
{ "DroidSerif-Bold.ttf", NULL },
{ "DroidSerif-Italic.ttf", NULL },
{ "DroidSerif-BoldItalic.ttf", NULL },
{ "DroidSansMono.ttf", gMonoNames },
/* These are optional, and can be ignored if not found in the file system.
These are appended to gFallbackFonts[] as they are seen, so we list
them in the order we want them to be accessed by NextLogicalFont().
*/
{ "DroidSansArabic.ttf", gFBNames },
{ "DroidSansHebrew.ttf", gFBNames },
{ "DroidSansThai.ttf", gFBNames },
{ "DroidHindi.ttf", gFBNames }, // 新添加的語言
{ "MTLmr3m.ttf", gFBNames }, // Motoya Japanese Font
{ "MTLc3m.ttf", gFBNames }, // Motoya Japanese Font
{ "DroidSansJapanese.ttf", gFBNames },
{ "DroidSansFallback.ttf", gFBNames }
};

5) 去./build/target/proct/full.mk看看系統選擇的是哪個語言列表,我的是:
$(call inherit-proct, build/target/proct/languages_small.mk)

那我就去修改./build/target/proct/languages_small.mk,若這里顯示的是languages_full.mk,那麼就修改./build/target/proct/languages_full.mk文件,修改如下:
PRODUCT_LOCALES := en_US en_GB fr_FR hi_IN it_IT de_DE es_ES

3. 剩下的就是重新編譯一下,然後flash到手機或模擬器上就可以了。
設置頁面:

打開一個Hindi的網頁,hindi語言可以正常顯示了:

http://www.cnblogs.com/melaniedeng/archive/2012/02/15/2353382.html

Ⅲ android 谷歌什麼時候推出的新語言

谷歌推出全新Android開發語言Sky:讓App更流暢
除游戲之外的Android應用通常使用Java語言來開發,而谷歌內部的一個團隊正在探索全新的應用開發方式。他們利用了谷歌自主的網頁開發語言Dart來開發Android應用。這幫助他們專注於速度,並可以與網頁進行深度整合。
Dart由Chrome V8引擎的團隊成員發明。該團隊近期舉行了Dart開發者峰會,展示了在Android項目中使用的Dart。在Android項目中使用的Dart並未被稱作「Android版Dart」,而是有了一個新名字「Sky」。目前,Sky只是一次開源的嘗試。但相對於傳統的Android應用開發方式,Sky有著多方面優勢。
Sky的最主要目的包括提高運行速度和響應速度。在大部分設備上,應用流暢的標准都是實現60FPS的幀率。不過,Dart團隊希望實現高達120FPS的幀率。目前在Android平台上,許多應用連標準的60FPS幀率都難以達到,更不用說120FPS。60FPS的幀率要求每16毫秒繪制一幀,當畫面繪制速度達不到這一水平時,應用就會出現卡頓。
Dart團隊展示了一款演示應用,每幀的繪制速度僅為1.2毫秒。盡管這只是一次簡單的展示,但這意味著,對於開發流暢而復雜的應用來說,Sky有著很大的空間,這也使120FPS的幀率成為了可能。該團隊表示,Sky的應用程序介面(API)不會影響界面的主線程,這意味著即使應用運行速度變慢,用戶界面仍將保持流暢的響應速度。

Sky並不依賴於平台,其代碼可以運行在Android、iOS,以及任何集成了Dart虛擬機的平台上。這類應用的運行類似於網站。應用的很大一部分基於HTTP,這意味著開發者可以進行持續的開發,並確保所有用戶一直使用最新版本。這款演示應用的弱點在於無法離線運行,而啟動應用則需要1到2秒鍾時間,因為應用需要下載數據。不過,這兩方面的問題可以通過緩存機制來解決。
基於HTTP的模式使開發變得很簡單。開發者不必編輯代碼、編譯並打包,這些代碼可以在HTTP伺服器上編輯。而用戶只需關閉並重新打開應用,即可完成應用的「升級」。這就像是一款網頁瀏覽器。Android開發者可以使用Sky Framework,這提供了一整套Material Design小工具,幫助開發者方便地增加操作欄、觸控效果、導航面板,以及Android應用中所需的一切元素。
與普通應用類似,Sky應用可以獲得Android的全部許可權和API,但結合來自網頁伺服器的自動升級功能,這將帶來信息安全問題。不過目前,Sky僅僅只是一個試驗項目。在Sky成為一種主流的Android應用解決方案之前,Sky團隊需要解決這些問題。該團隊的GitHub頁面顯示:「我們仍在對Sky進行頻繁地迭代,這意味著框架和底層引擎有可能以不兼容的方式出現改變。」

Ⅳ 安卓用的是什麼語言開發的

安卓官方開發語言:Kotlin 初探

Kotlin 是一種在 Java 虛擬機上執行的靜態型別編程語言,由 JetBrains 開發團隊所開發。該語言有幾個優勢。

它大大減少需要寫的樣板代碼的數量。避免空指針異常等整個類的錯誤。構建伺服器端程序、Android 應用程序或者在瀏覽器中運行的前端程序。通過 100% Java 互操作性,利用 JVM 既有框架和庫。

在Kotlin中變數聲明有兩種類型,val修飾變數是只讀變數即只能賦值一次,再次賦值時就會編譯錯誤,如果需要多次修改值就需要使用var。

(4)android新語言擴展閱讀:

The IntelliJ Kotlin 插件擴展了 Java 編譯器使得 Kotlin 代碼能夠得以編寫、編譯和調試。除此之外,關於基本的 Java 集合,已經有編寫好的幫助函數,可以更順暢地銜接將在 Java 8 中出現的集合擴展。

Kotlin,類似 Xtend 一樣,旨在提供一種更好的 Java 而非重建整個新平台。這兩種語言都向下編譯為位元組碼(雖然 Xtend 是首先轉換成相應的 Java 代碼,再讓 Java 編譯器完成繁重的工作),而且兩者都引入了函數和擴展函數(在某個有限范圍內靜態地增加一個新方法到某個已有類型的能力)。

Ⅳ android開發中怎麼設置多語言版本

android多語言實現必須是將strings.xml放在不同的文件夾目錄下,由安卓系統自動去載入文字資源。

1.Android 中要實現國際化比較簡單,字元串國際化:只要在 res 文件夾下新建對應語言的 values 文件夾就好了。

例如:

  1. 英語環境下的,文件夾命名為:values-en

  2. 美國英文環境:values-en-rUS

  3. 中文環境為:values-zh

  4. 大陸地區中文環境:values-zh-cn


2.eclipse 下新建 Android 項目時,會在 res 目錄下自動創建一個默認語言環境的文件夾 : values 。

3.當某一個資源沒有在語言環境的對應的資源集合中找到時,就會使用 values 下的資源。若某一個語言環境沒有在項目中定義語言環境,那麼也會使用 values 下的資源。

Ⅵ 為Android系統中自己添加語言怎樣操作

1.首先你在settings中出現阿拉伯語的選項了表示你在build/target/proct/language-full.mk里添加了的PRODUCT-LOCALES:=ar-EG
2.在packages/apps/settings/res/下面添加values-ar和values-ar-nokeys(這些文件你的自己去找天添加進去)
3.packages/apps/settings/tests/res/下添加values-ar 4.frameworks/base/core/res/res/下添加values-ar 這就好了注意:我讓你添加的文件下你可以去源碼中下載 看有沒有,我在Android-2.3.7中找到的

Ⅶ Android開發中新增語言怎麼定義

android多語言實現必須是將strings.xml放在不同的文件夾目錄下,由安卓系統自動去載入文字資源。 1.Android 中要實現國際化比較簡單,字元串國際化:只要在 res 文件夾下新建對應語言的 values 文件夾就好了。 例如: 英語環境下的,文件夾命名為:values-en 美國英文環境:values-en-rUS 中文環境為:values-zh 大陸地區中文環境: values-zh-cn 2.eclipse 下新建 Android 項目時,會在 res 目錄下自動創建一個默認語言環境的文件夾 : values 。 3.當某一個資源沒有在語言環境的對應的資源集合中找到時,就會使用 values 下的資源。 若某一個語言環境沒有在項目中定義語言環境,那麼也會使用 values 下的資源。

Ⅷ android開發出新語言了嗎

安卓不能來發出語言來吧,安卓都是基於JAVA開發出來的!

Ⅸ android是一種什麼語言

android(又被簡稱為"and")是微軟公司在2000年6月發布的一種新的編程語言,並定於在微軟職業開發者論壇(PDC)上登台亮相。android是微軟公司研究員Anders Hejlsberg的最新成果。android看起來與c有著驚人的相似;它包括了諸如單一繼承、界面、與c幾乎同樣的語法,和編譯成中間代碼再運行的過程。但是android與c有著明顯的不同,它借鑒了Delphi的一個特點,與COM(組件對象模型)是直接集成的,而且它是微軟公司網路框架的主角。
在本文中,我將考察創建一種新計算機語言的一般動機,並將特別指明是什麼原因導致了android的出現,然後我將介紹android和它與Java、C、C++的相似之處。其次我將討論一些存在於c和android之間的高層次的和基礎的差別。我將以衡量在用多種語言開發大型應用程序的時候所需的知識(或者對這種知識的缺乏程度)來結束本文,而這正是c和android的一個主要戰略。目前,android和c還只能以android語言規則,以及Windows 2000的一個「android預覽版本」,還有MSDN上迅速增多的文檔集子的形式獲得(還沒有最終定型)。

安卓手機如何添加多國語言

添加方法是有的,網上可以找到很多。不過很麻煩,以下以添加波斯語為例給你簡單的說下:

1、在sdkDemo.mk 中添加語言和國家的國際化的縮寫代碼,如伊朗:IR表示,波斯語用fa表示,這是國際化的標准,不可以隨便寫的。如果不知道國家與地區的縮寫,可以去網上找找。
PRODUCT_LOCALES:= fa_IR en_US zh_CN en_GB fr_FR it_IT es_ES ……..
sdkDemo.mk的路徑為:gingerbread\device\rockchip\sdkDemo\sdkDemo.mk.
2、在framework/base/data/font目錄下添加波斯語的字型檔,如DroidSansArabic.ttf
3、字型檔加完後,就要去調用字型檔了,調用字型檔的文件是在external/skia/src/ports/SKFontHost-android.app下,
static constFontInitRec gSystemFonts[] = {
{ "DroidSans.ttf", gSansNames },
………
{
"DroidSansArabic.ttf",
gFBNames },
4、字型檔准備好了,還有一些makefile需要修改了。在external/icu4c/studata/ Android.mk下:
config := $(word1, \
$(if $(findstringar,$(PRODUCT_LOCALES)),large) \

$(if
$(findstring fa,$(PRODUCT_LOCALES)),large) \
5、 在frameworks/base/core/res/res/下新增加一個values-fa-rIR的文件夾,並新建一個strings.xml文件。
6、上面五步加完後,在settingsàLanguage&keyboardàSelect language列表下就會出現波斯語這個選項了,但是選了波斯語後,並沒有出現波斯語文字。這時就需要在相應的APP下的res/下新建values-fa-rIR的文件夾,並翻譯strings.xml文件即可。如主app的strings.xml路徑為:gingerbread\packages\apps\Desktop2D_mbx_new\res\values-fa-rIR\strings.xml

最後,以上所有內容都加好後,一定要記得:
Make clean
Make prebuild
Make

建議你還是刷新ROM來解決吧!

熱點內容
qq群里上傳的文件怎麼刪除 發布:2024-04-24 22:13:21 瀏覽:357
途岳配置升級了什麼 發布:2024-04-24 21:55:55 瀏覽:886
刷機安卓10狀態欄圓角如何修復 發布:2024-04-24 21:24:00 瀏覽:135
創建sql資料庫的命令是什麼 發布:2024-04-24 21:23:58 瀏覽:43
不是安卓該如何下載畫質怪獸 發布:2024-04-24 21:18:51 瀏覽:701
php載入網頁 發布:2024-04-24 21:15:20 瀏覽:161
遠程伺服器更換ip地址 發布:2024-04-24 21:14:43 瀏覽:528
什麼時候上線華為方舟編譯器軟體 發布:2024-04-24 21:10:21 瀏覽:631
安卓布局文件指的是哪個 發布:2024-04-24 21:08:05 瀏覽:889
磁帶存儲價格 發布:2024-04-24 21:04:22 瀏覽:902