Bootstrap

利用Android源码,轻松实现汉字转拼音功能

今天和大家分享一个从Android系统源代码提取出来的汉字转成拼音实现方案,只要一个类,560多行代码就可以让你轻松实现汉字转成拼音的功能,且无需其他任何第三方依赖。

需求场景

实际开发过程中需要用到实现汉字转成拼音的场景比较常见,如:通讯录里的联系人字母导航栏,为没有设置头像的用户生成一个名字首字母的头像,国家(省份、城市)字母导航栏,搜索关键字转换成拼音等。

实现方案

Android平台上将汉字转换成为拼音已经有一些开源的第三方实现方案,如pinyin4j和TinyPinyin

pinyin4j:https://sourceforge.net/projects/pinyin4j
TinyPinyin:https://github.com/promeG/TinyPinyin

以上这两个实现方案,都需要引入不少类以及一些相应的编码文件,这里和大家介绍一个比上面两个方案还要精简的实现方案,只要560行代码且无需依赖于其他任何编文件的实现。这个类是从Android系统通讯录源码中提取的,类名为HanziToPinyin,其类文件路径如下:

/packages/provider

;