android 编译PinyinIME输入法报错
生活随笔
收集整理的這篇文章主要介紹了
android 编译PinyinIME输入法报错
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1、錯誤提示
C:\SVN\CustomPinyinIME\app\src\main\cpp\android\com_android_inputmethod_pinyin_PinyinDecoderService.cpp:217:65: error: cannot initialize a parameter of type 'jboolean *' (aka 'unsigned char *') with an rvalue of type 'bool'2、找到這行編譯錯誤的代碼?
JNIEXPORT jint JNICALL nativeImGetPredictsNum(JNIEnv *env, jclass clazz,jstring fixed_str) {char16 *fixed_ptr = (char16*)(*env).GetStringChars(fixed_str, false);size_t fixed_len = (size_t)(*env).GetStringLength(fixed_str);char16 fixed_buf[kMaxPredictSize + 1];if (fixed_len > kMaxPredictSize) {fixed_ptr += fixed_len - kMaxPredictSize;fixed_len = kMaxPredictSize;}utf16_strncpy(fixed_buf, fixed_ptr, fixed_len);fixed_buf[fixed_len] = (char16)'\0';predict_len = im_get_predicts(fixed_buf, predict_buf);(*env).ReleaseStringChars(fixed_str, fixed_ptr);return predict_len; }3、解決辦法
里面函數(shù)第一行里面的false 改成? JNI_FALSE
? char16 *fixed_ptr = (char16*)(*env).GetStringChars(fixed_str, false);
改成
char16 *fixed_ptr = (char16*)(*env).GetStringChars(fixed_str, JNI_FALSE);
4、編譯注意事項(xiàng)
編譯這個開源的輸入法。熟悉ndk配置和cmake配置就可以了。
cmake配置如下
?build設(shè)置
?
local.properties文件編譯的ndk路徑配置ndk.dir=C\:\\Users\\AppData\\Local\\Android\\Sdk\\ndk\\21.3.6528147?
總結(jié)
以上是生活随笔為你收集整理的android 编译PinyinIME输入法报错的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 软件评价——360安全卫士
- 下一篇: 烽火18台系列之八——Webshell,