首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何将byteArray从Native C发送到我的安卓应用程序

如何将byteArray从Native C发送到我的安卓应用程序
EN

Stack Overflow用户
提问于 2013-05-08 08:51:26
回答 1查看 194关注 0票数 0

我正在开发一个名为test.c的本机应用程序,我想从本机C文件返回arrayofByte,我可以在运行应用程序时编译并生成.so文件

代码语言:javascript
运行
AI代码解释
复制
    05-08 13:04:08.477: D/dalvikvm(945): No JNI_OnLoad found in /data/data/com.ssg.nativelibtest/lib/libnativelibtest.so 0x45f3da78, skipping init  

在我的应用程序中没有任何崩溃的情况下得到这条消息,那么如何解决Nativefile的调用。作为参考,我给出了我的test.c文件这是用C编写的文件,我将其称为.so文件Java appliaction

代码语言:javascript
运行
AI代码解释
复制
jbyteArray Java_com_ssg_nativelibtest_MainActivity_getEncryptionKey(JNIEnv * env, jobject obj)
{

    unsigned char ukey[] = { 'H','A','R','D','C','O','D','E','D',' ','K','E','Y','1','2','3'};
    int lengthOfArray = (*env)->GetArrayLength(env, ukey);
    //jsize lengthOfArray =(*env)->GetArrayLength(env, ukey);
    jbyteArray byteKey = (*env)->NewByteArray(env, lengthOfArray);
    (*env)->SetByteArrayRegion(env, byteKey, 0, lengthOfArray, (jbyte *)ukey);
    return byteKey;
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-08 09:01:56

请参阅documentation

如果使用C++编写,则

JNI_OnLoad函数应如下所示:

代码语言:javascript
运行
AI代码解释
复制
jint JNI_OnLoad(JavaVM* vm, void* reserved)
{
    JNIEnv* env;
    if (vm->GetEnv(reinterpret_cast<void**>(&env), JNI_VERSION_1_6) != JNI_OK) {
        return -1;
    }

    // Get jclass with env->FindClass.
    // Register methods with env->RegisterNatives.

    return JNI_VERSION_1_6;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16436376

复制
相关文章
如何从电脑直接控制安卓手机 监控安卓手机 安卓手机如何控制安卓手机
实用方法很简单,在手机上安装这个软件,然后运行,然后进入Setting,点击User's settings,然后Create new user(我新建了一个叫做ACE的用户),注意这里在豌豆荚的截图只是做教程用的,实际不需要连接豌豆荚,甚至不需要WIFI,只要你打开了GPRS
程序员小顾
2021/12/01
16.9K0
关于React Native 安卓首屏白屏优化
问题描述 在android中,当点击某个rn模块的入口按钮,弹出rn的activity到rn的页面展现出来的过程中,会有很明显的白屏现象,不同的机型不同(cpu好的白屏时间短),大概1s到2s的时间。 注意,只有在真机上才会有此现象,在模拟器上没有此现象完全是秒开。 优化分析 通过工具分析,问题主要在下面的代码上, ReactRootView mReactRootView = createRootView(); mReactRootView.startReactApplication(mReactInst
xiangzhihong
2018/02/05
1.6K0
安卓Native内存分析工具LoliProfiler开源啦
项目背景 LoliProfiler是一款针对安卓项目(游戏或APP产品)的C/C++内存分析的自研工具,专为进行内存优化的游戏引擎工程师与游戏测试工程师开发。拥有用户友好的图形界面,资深开发者可对不同的引擎进行深度定制,以最大化发挥工具的作用。官方针对UnrealEngine4与Unity引擎有特殊优化,以达到最佳的性能表现。相较于同类型产品Perfetto,其更适合游戏引擎,支持的安卓系统版本更广泛,可深度定制。 LoliProfiler解决了安卓平台Native内存采集与分析的一系列痛点和问题,
腾讯开源
2021/03/12
2.5K1
React-Native 安卓预加载优化方案
本文作者:ivweb 朱灵子 React-Native安卓预加载优化方案 本文针对使用React Native开发混合应用的过程中安卓端白屏时间较长的问题,提出了react-native安卓端Root
腾讯IVWEB团队
2017/07/03
6K1
React-Native 安卓预加载优化方案
安卓 jni 开发错误 UnsatisfiedLinkError: Native method not found
很明显是因为 native 方法找不到,google 下发现该错误出现频率还蛮高的,基本有两种:
Java架构师历程
2018/09/26
1.6K0
【React Native 安卓开发】----(Picker)【第四篇】
某一项被选中时执行此回调。调用时带有如下参数: itemValue: 被选中项的value属性 itemPosition: 被选中项在picker中的索引位置
先知先觉
2019/01/21
1.3K0
【React Native 安卓开发】----(Flexbox布局)【第二篇】
提示:在运行一个嵌入了RN的工程里面 需要先进入到工程根目录运行 npm start 然后运行工程在模拟器上 每次改动js文件保存后,点击两次R键,就可直接刷新项目。如果是真机摇一摇选择load js 即可更新
先知先觉
2019/01/21
6380
如何开发适配安卓和iOS双平台的React Native应用
众所周知用React Native是可以开发跨平台的Android和iOS App。我们可以用React Native开发Android应用也可以开发iOS应用,那么如何让我们开发的React Native应用适配Android和iOS双平台呢? 在这篇文章中我将从布局、组件选择、图片、性能问题、Bugs等几个方面来谈一谈Android和iOS的适配问题。 布局 React Native在布局方面采用的是Flexbox,为了能让代码有更高复用性以及兼容性,我们可以将Android和iOS的样式尽量保持一致
IT架构圈
2018/05/31
3.5K0
andriod学习笔记——安卓应用程序生命周期
按照应用程序的组件以及组件的运行状态将所有进程重要性程度分为五个级别:
三产
2021/01/13
4200
安卓基础干货(七):安卓广播的学习
android应用程序里面的电台:系统内置的一个服务,会把事件(电量不足、电量充满、开机启动完成)作为一个广播消息发送其他的接收者;
緣來
2018/09/18
4.2K0
安卓基础干货(八):安卓进程的学习
接口(interface): 对外开放暴露的功能,但是不会暴露功能实现的细节; 让中间人实现服务接口的目的:只对外暴露接口里面业务逻辑方法,隐藏中间人里面的其他方法;
緣來
2018/09/18
4.2K0
安卓的日历_公认不卡的安卓手机
代码已上传到github:https://github.com/yannecer/NCalendar 项目主要用到了自定义View,ViewPager,RecyclerView和NestedScrollingParent。
全栈程序员站长
2022/08/03
5K0
安卓的日历_公认不卡的安卓手机
安卓 toast_安卓toast使用
一个 toast 是在屏幕上弹出一条信息,它的大小总是包裹着需要显示的内容,并且当前的 Activity 依然是可见并且可互动的。toast会自动消失,并且不接受任何互动事件。因为 toast 可以在后台的 Service 中创建,所以即使这个应用程序没有显示在屏幕上,仍然可以弹出 toast.
全栈程序员站长
2022/10/01
6.7K0
安卓Native和H5页面进行交互
1、H5页面调用安卓Native界面 1)通过给webView添加JsInterface,安卓提供接口,让H5来进行调用         a)安卓写一个类,里面的方法需要用通过注解来表明是java接口的方法。
用户3030674
2018/09/14
2.2K0
安卓基础干货(六):安卓Activity的学习
5、application中的label标签和activity中的label标签不是一个概念,application中的label表示应用程序的名称,activity中的label标签表示的是它的界面的名称。
緣來
2018/09/18
3K0
『安卓』安卓开发基础--基本控件
显示文字,相当于Panel。一般用来文本展示,继承自android.view.View,在android.widget包中。
风骨散人Chiam
2020/10/28
7.3K0
安卓基础干货(四):安卓网络编程的学习
网络HTML查看器 httpurlconnection: 1、发送请求 (1)创建一个URL对象 (2)设置请求头信息 2、服务器返回数据 (1)判断状态码:200 ok,404 没有找到资源、503、509 服务器端错误 (2)解析服务器返回的二进制数据,解析成一个图片 (3)把图片显示在TextView上 示例代码: package com.itheima.htmlview; import java.io.InputStream; import ja
緣來
2018/09/18
15.1K0
安卓逆向系列篇:安卓工具总结
JDK:Java Development Kit是Java的开发工具包,JDK包含了JRE,同时还包含了编译java源码的编译器javac,还包含了很多java程序调试和分析的工具。
亿人安全
2022/06/30
9.3K0
安卓逆向系列篇:安卓工具总结
安卓软件开发_应用程序UI组件意外停止
——成功属于耐得住寂寞的人,接下来几篇将讲述Android应用程序的原理及术语,可能会比较枯燥。如果能够静下心来看,相信成功将属于你。
全栈程序员站长
2022/09/20
1.1K0
安卓软件开发_应用程序UI组件意外停止
安卓逆向从 0 到 1 学习总结
原本打算在入门之后弄个安卓逆向教程作为总结,但是吧,写文章教程,各大论坛都有,而且还写得挺好,例如 52 论坛的 《教我兄弟学逆向》教程,自己再去写就没多大意思了;做视频教程吧,因为个人原因,没有那么多时间去录制视频和剪辑视频。
信安之路
2020/08/14
2.3K0

相似问题

用安卓截击发送ByteArray

21

安卓房如何将ByteArray存储为Blob?

123

在安卓系统中从byteArray创建位图

10

安卓系统中的ByteArray to SQLite

10

如何通过ksoap2将byteArray从安卓发送到wcf

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档