文档章节

jni接口NewStringUTF崩溃

shzwork
 shzwork
发布于 06/25 23:57
字数 212
阅读 4
收藏 0

转载  原文 https://blog.csdn.net/churuxu/article/details/49999575

 

ndk开发中,将c/c++的UTF8编码的字符串转换成java字符串,使用了NewStringUTF接口。


当字符串中包含emoji字符时,在有些手机上正常,有些手机会崩溃。


logcat错误信息类似:
NewStringUTF input is not valid Modified UTF-8

 

emoji字符utf8编码占用4个字节,有些手机下,NewStringUTF验证有效性会认为是错误的UTF8编码。


解决方法:

先将UTF8编码的字符串转成UTF16编码,再调用jni的NewString接口。

http://developer.51cto.com/art/201112/310128.htm

本文转载自:https://blog.csdn.net/lipeijian008/article/details/79852846

shzwork
粉丝 11
博文 595
码字总数 10198
作品 0
厦门
私信 提问
Android JNI开发系列(六)字符串操作

JNI字符串操作 字符串是引用数据类型,不属于基本数据类型 Java 使用unicode编码,C使用UTF-8,所以在操作中 C语言的字符串操作在头文件中 示例代码

蔡小鹏
2018/10/14
0
0
JNIEnv的使用在C和C++中的区别

对于JNIEnv *env来说,在C中调用: (*env)->NewStringUTF(env, "Hello from JNI!"); 而在C++中如果按照上述调用则会发生'base operand of '->' has non-pointer type '_JNIEnv''错误,需要如......

TinkerS
2012/10/09
0
0
Android: JNI WARNING: illegal start byte

文件名: 04 German-Deutsch Als Erdbeben werden messbare Erschütterungen des Erdkörpers bezeichnet. Der deutlich größte.txt 进入目录listfiles, 直接挂掉: W/dalvikvm( 452): JNI......

长平狐
2012/06/20
1K
0
Android JNI出坑指南

摘要:在Android编程中,出于硬件交互,跨平台,安全性,第三方库等方面的考虑,我们需要Java与C/C++互相调用,这就需要借助Java平台的JNI接口(Java Native Interface)。Android早期版本因...

腾讯Bugly
2017/12/15
0
0
android 使用jni

1.编写接口java 文件 package com.liux.example.jnitest; public class JniTest { public native static void sayHello(); public native static String stringFromJNI(); } 2. 根据该文件生......

LIU-X1001
2016/06/30
44
0

没有更多内容

加载失败,请刷新页面

加载更多

php 遇到 No input file specified的解决方法

(一)IIS Noinput file specified 方法一:改PHP.ini中的doc_root行,打开ini文件注释掉此行,然后重启IIS 方法二: 请修改php.ini 找到 ; cgi.force_redirect = 1 去掉前面分号,把后面的1...

chenhongjiang
今天
5
0
MySQL 基础

一、常用命令 在命令行中,配置好环境变量后,通过cmd可以直接进入mysql命令行模式,同时列举几种常用命令 # 进入mysql数据库,密码可以先不写,打完-p后再输入,防止被别人看到mysql -u账...

华山猛男
今天
6
0
简单的博客系统(四)Django请求HTML页面视图信息--基于函数的视图

1. 编写用于查询数据的功能函数 应用目录 下的 views.py 文件通常用于保存响应各种请求的函数或类 from django.shortcuts import renderfrom .models import BlogArticles# Create your ...

ZeroBit
今天
5
0
用脚本将本地照片库批量导入到Day One中

因为目前iCloud 空间已经不足,其中95%都是照片,之前入手了DayOne,且空间没有限制,订阅费一年也不少,再加上DayOne作为一款日记App 也比较有名,功能方面最大的就是地理视图与照片视图,尤...

在山的那边
昨天
19
0
jupyter部署安装

python373 -m ipykernel install --name python373 ipython kernelspec list sc create myjupyterservice binpath="D:\apply\Python373\Scripts\jupyter-notebook --config=V:/my_work/jupyt......

mbzhong
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部