本人在eclipse新建工程,导入pinyin4j 运行自写程序,可以正确将汉字转为拼音。但是当我把这个jar包放在系统自带的Contracts中,并配置好android.mk文件后,运行mm 命令后,编译正常,但却无任何效果。
转换方法如下:
public static String getPinYin(String inputString) {
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
format.setToneType(HanyuPinyinToneType.WITH_TONE_MARK);
format.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE);
char[] input = inputString.trim().toCharArray();
StringBuffer output = new StringBuffer("");
try {
for (int i = 0; i < input.length; i++) {
if (Character.toString(input[i]).matches("[\u4E00-\u9FA5]+")) {
String[] temp = PinyinHelper.toHanyuPinyinStringArray(input[i], format);
output.append(temp[0]);
output.append(" ");
} else
output.append(Character.toString(input[i]));
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
return output.toString();
}
mk文件如下:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)LOCAL_MODULE_TAGS := userLOCAL_SRC_FILES := $(call all-java-files-under, src)LOCAL_STATIC_JAVA_LIBRARIES := pinyinlib googlelogin-clientLOCAL_PACKAGE_NAME := Contacts
LOCAL_CERTIFICATE := sharedinclude $(BUILD_PACKAGE)include ${CLEAR_VARS}
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := pinyinlib:pinyin4j-2.5.0.jar
include $(BUILD_MULTI_PREBUILT)
# Use the folloing include to make our test apk.
include $(call all-makefiles-under,$(LOCAL_PATH))
转换方法如下:
public static String getPinYin(String inputString) {
HanyuPinyinOutputFormat format = new HanyuPinyinOutputFormat();
format.setCaseType(HanyuPinyinCaseType.LOWERCASE);
format.setToneType(HanyuPinyinToneType.WITH_TONE_MARK);
format.setVCharType(HanyuPinyinVCharType.WITH_U_UNICODE);
char[] input = inputString.trim().toCharArray();
StringBuffer output = new StringBuffer("");
try {
for (int i = 0; i < input.length; i++) {
if (Character.toString(input[i]).matches("[\u4E00-\u9FA5]+")) {
String[] temp = PinyinHelper.toHanyuPinyinStringArray(input[i], format);
output.append(temp[0]);
output.append(" ");
} else
output.append(Character.toString(input[i]));
}
} catch (BadHanyuPinyinOutputFormatCombination e) {
e.printStackTrace();
}
return output.toString();
}
mk文件如下:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)LOCAL_MODULE_TAGS := userLOCAL_SRC_FILES := $(call all-java-files-under, src)LOCAL_STATIC_JAVA_LIBRARIES := pinyinlib googlelogin-clientLOCAL_PACKAGE_NAME := Contacts
LOCAL_CERTIFICATE := sharedinclude $(BUILD_PACKAGE)include ${CLEAR_VARS}
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := pinyinlib:pinyin4j-2.5.0.jar
include $(BUILD_MULTI_PREBUILT)
# Use the folloing include to make our test apk.
include $(call all-makefiles-under,$(LOCAL_PATH))
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货