前两天为了参加腾讯的面试,耽搁这个博客几天没有更新,结果还没出来,希望我能好运。 接下来继续复习安卓的文件存储,也就是安卓的IO。 安卓的文件存储有三种方式,第一种方式是使用shredPreferences,在shredPreferences中,文件保存形式是XML文件的形式,文件保存的位置是\data\data\<包名>\shred_Prefs,保存的方式是使用键值对的形式,也
转载 2023-07-02 10:31:24
285阅读
Java Native Interface,简称JNI,顾名思义,就是Java本地接口服务。 JNI是Java与底层C/C++交互的桥梁,若是没有JNI,则Java程序无法运行,这不是危言耸听,而是事实。Object是Java的所有类的父类,一切的Java都继续于Object,观看Object的源码就知道了,Object里面有不少native方法。 Android端的NDK开发本质上就是Jav
转载 8月前
33阅读
今天先说一下JNI和NDK的概念,然后在记录一下CMake开发的步骤和注意事项概念JNI:Java Native Interface标准是Java平台的一部分,JNI是Java语言提供的让Java语言和其他语言(尤其是C/C++)进行沟通,Java语言通过JNI可以调用C/C++代码,C/C++代码也可以通过JNI调动Java代码 NDK:Native Development Kit是一系列工具的
转载 2023-12-01 14:30:48
185阅读
当使用第三方提供的jni库或不打算开源,方法一就不适用了。这里实现一个jni动态库与应用工程分离实现的方法.一 打开Android Studio, 菜单”Tools” – > “Android” –> “SDK Manager”在下图里选择安装”ndk”, 如已安装则跳过这步骤. Ndk安装完成后,会默认安装在”~/Android/Sdk/ndk-bundle/”目录里.二 因编译jn
转载 2023-08-17 15:58:27
216阅读
# Android JNI读取文件Android开发中,JNI(Java Native Interface)是Java语言与其他本地(Native)语言交互的一种机制。通过JNI,我们可以调用C/C++编写的本地库来实现一些高性能的功能,比如图像处理、音视频编解码等。本文将介绍如何使用JNI来读取文件,并给出相关的代码示例。 ## 1. JNI简介 JNI(Java Native Int
原创 2024-01-20 09:06:51
447阅读
由于Android是基于linux内核的开源系统,根据语言环境不同可以分为Java层、Native C层、Linux Kernel层。Java层的安全是使用Java语言开发,基于SDK,能实现的功能相对简单。Linux Kernel层安全,需要从源码做起,编译自己的系统,通用性不强。因此在Native C层,通过JNI开发,可以使用linux提供的函数实现更多的功能。在hook API方面与lin
# Android JNI 添加C文件教程 ## 简介 在开发Android应用时,有时需要与C/C++代码进行交互。Android JNI(Java Native Interface)是一种能够实现Java和本地(Native)C/C++代码之间通信的机制。本文将教会你如何在Android项目中添加C文件并与Java代码进行交互。 ## 整体流程 在添加C文件并与Java代码进行交互的过程
原创 2024-02-12 03:24:25
163阅读
# Android JNI 文件夹:深入理解Android本地接口 在Android开发中,Java与C/C++之间的交互至关重要。JNI(Java Native Interface)是一个编程框架,它允许Java代码通过本地方法调用C/C++函数。本文将深入探讨Android JNI文件夹的结构,并提供示例代码,帮助你更好地理解如何使用JNI。 ## JNI 的工作原理 在非常高的层次上,
原创 2024-09-16 05:08:27
204阅读
# Android JNI LOGI 头文件Android开发中,我们经常需要使用JNI(Java Native Interface)来调用C/C++代码。为了方便调试和输出信息,我们可以使用LOGI头文件来显示日志信息。LOGI头文件提供了一些宏定义,可以将输出信息打印到Logcat中,方便我们进行调试。 ## LOGI头文件的使用 我们首先需要在C/C++代码中包含LOGI头文件,并
原创 2024-06-26 04:08:07
73阅读
# Android JNI文件的生成 Java Native Interface(JNI)是一种Java与其他语言(例如C/C++)之间的调用接口,使得Java程序能够调用本地方法或者与其他语言实现的程序库进行交互。JNIAndroid开发中广泛使用,特别是在需要高性能或直接访问底层硬件时。本文将详细介绍如何生成JNI文件,附带代码示例以帮助理解。 ## 1. JNI的基本概念 JNI的基
原创 10月前
148阅读
我们来完成一个基于Android的下载实例: 首先新建一个项目ServiceBestPractice项目,在app/build.gradle文件中添加一个OkHtttp依赖:dependencies { implementation 'com.squareup.okhttp3:okhttp:3.4.1'以便后面编写网络相关的功能。 新建一个DownloadListener接口来定义一个回调接口,对
一: Qstring fileName = QFileDialog::getOpenFileName(this, tr("open file"), " ", tr("Allfile(*.*);;mp3file(*.mp3)"));说明:这样就会产生一个对话框,和系统的资源管理器差不多的。返回的是你选择文件的 绝对路径。参数1:父窗口 参数2:对话框的标题 参数3:默认的打开的位置,如”我的文档
JNI和NDK是面试经常被问到的热点问题,在这里做一个记录。1.阐述你对JNI的理解  JNI的全称是Java Native Interface(Java本地接口)是一层接口,是用来沟通Java代码和C/C++代码的,是Java和C/C++之间的桥梁。通过JNI,Java可以完成对外部C/C++库函数的调用,相对的,外部C/C++也能调用Java中封装好的类和方法。  Java的优点是跨平台,和操
转载 2023-09-28 11:55:01
193阅读
概述 JNI:Java Native Interface,即Java本地接口,使Java与其他类型的语言进行交互,和C/C++交互的比较多。JNI属于Java的一部分,是JDK的组成部分,和Android关系不大,但是Android中核心的业务或高性能的功能都是C/C++开发的,比如游戏渲染、音视频编解码等,所以对于Android开发,JNI也是需要了解的。Android中并不是直接和C/C++打
    偏好设置也是Android中的数据存储方式的一种,它是以键值对的形式来存储数据的,用来存储一些比较小型的数据,我们在实际开发中,是经常会用到的,而且用户在平常的使用中,也会在不停的使用,偏好设置还是挺方便的。    偏好设置    作为一名Android的开发者,你不可以
Android中一共提供了5种数据存储方式,分别为:  (1)Files:通过FileInputStream和FileOutputStream对文件进行操作。  (2)Shared Preferences:常用来存储键值对形式的数据,对系统配置信息进行保存。  (3)Content Providers:数据共享,用于应用程序之间数据的访问。  (4)SQLite:Androi
转载 2023-06-25 11:41:22
194阅读
经过几天的努力终于搞定了android JNI部分,下面将我的这个小程序和大家分享一下。android JNI是连接android Java部分和C/C++部分的纽带,完整使用JNI需要Java代码和C/C++代码。其中C/C++代码用于生成库文件,Java代码用于引用C/C++库文件以及调用C/C++方法。android Java部分代码:jnitest.java package com.he
转载 2023-08-02 22:07:14
132阅读
一、JNI概述JNI是Java Native Interface的缩写,中文译为“Java 本地调用”。通俗地说,JNI是一种技术,通过这种技术可以做到以下两点:Java程序中的函数可以调用Native语言写的函数,Nativie一般指的是C/C++编写的函数。Native程序中的函数可以调用Java层的函数,也就是说在C/C++程序中可以调用Java函数。在平台无关的Java中,为什么要创建一个
转载 2023-10-25 22:00:12
150阅读
  JNI 全称为Java Native Interface 即Java本地接口,JNI是Java调用Native 语言的一种特性。通过JNI可以让Java与C/C++相互调用。一、如何使用JNI(注:本文中均只介绍CMakeList方式编译):首先我们要在java中声明一个本地方法如:(此为kotlin 写法 java 写法为 public native void
转载 2023-10-25 21:59:53
65阅读
 环境需求要进行jni开发,AndroidStudio需要以下环境: 方式一、在工程创建的时候添加在创建工程的过程中就有是否支持jni调用的选项 如图所示的Native C++或者选中 Include C++ support完成后你会发现项目的App模块下自动就把cmake相关的内容配置好了,我们来看看与无jni调用的工程有什么不同。 首先,app目录下多了CMake
转载 2023-11-14 10:37:06
130阅读
  • 1
  • 2
  • 3
  • 4
  • 5