1 应客户要求,为android2.3.4版本的手机添加一门新语言—在网上查了很多资料,按照下面的方法进行了更改:
a  在网上下载了一个DroidSansTibetan.ttf;将其拷贝到 ./frameworks/base/data/fonts/
b  修改./frameworks/base/data/fonts/Android.mk,将DroidSansTibetan.ttf添加到copy from:
copy_from := \
        DroidSans.ttf \
        DroidSans-Bold.ttf \
        DroidSansArabic.ttf \
        DroidSansHebrew.ttf \
        DroidSansThai.ttf \
        DroidSansTibetan.ttf \  (注:新添加的ttf文件,实际中这段注释不要)
        DroidSerif-Regular.ttf \
        DroidSerif-Bold.ttf \
        DroidSerif-Italic.ttf \
        DroidSerif-BoldItalic.ttf \
        DroidSansMono.ttf \
        Clockopia.ttf
c 修改./external/skia/src/ports/SkFontHost_android.cpp,将DroidSansTibetan.ttf加进去/*  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    },
    { "DroidSansTibetan.ttf",       gFBNames    }, // 新添加的语言
    { "MTLmr3m.ttf",                gFBNames    }, // Motoya Japanese Font
    { "MTLc3m.ttf",                 gFBNames    }, // Motoya Japanese Font
    { "DroidSansJapanese.ttf",      gFBNames    },
    { "DroidSansFallback.ttf",      gFBNames    }
}; d   去./build/target/product/full.mk看看系统选择的是哪个语言列表,我的是:
    $(call inherit-product, build/target/product/languages_small.mk)
  那我就去修改./build/target/product/languages_small.mk,修改如下:
PRODUCT_LOCALES := en_US en_GB fr_FR bo_CN it_IT de_DE es_ES
   e   将翻译好的语言values-bo-rCN资源包放在对应的系统应用下,如在./packages/apps/Calendar下增加一个名为values-bo-rCN的资源包
  f    重新编译
  g   编译好后将./out/target/product/目录下的system.img文件替换sdk./platforms/image/下的system.img;
  h   重新运行android avd;
2 设置语言:在设置-选择语言中选择Tibetan
3 点击进入日历应用
4 显示效果如下截图1截图2截图3
正确的显示效果应该是下面这样
སྐྲུ