Binder 的两种 C 语言实现方式Binder 机制是 Android 中使用最广泛的进程间通信机制,借助 Binder 开发者可以方便的开发各种实现应用间信息传输、分享的应用。对于 Android 应用开发者来说,开发都是基于 Java 语言进行的,但其实 Android 系统提供了实现 C 语言层的 Binder 的方式,分别是记住 libbinder.so 和 libbinder_ndk
转载 2023-09-11 15:59:48
602阅读
 这个程序使用eclipse创建一个java程序,通过jni调用我们的共享库,这个共享库非常简单,只实现一个写日志的函数,ok,我们开始。首先,我们还是先建立一个Android工程,打开Eclipse开发环境,新建工程,Build Target设为Android 1.5, 其他项目随便填。为了方便,可以把这个项目放在ndk的apps目录下面。其次,我们新建一个调用共享库的类,名字就叫My
转载 7月前
24阅读
android中可以通过ptrace附加进程,然后向远程进程注入so库,从而达到监控以及远程进程关键函数挂钩。目前,android上的注入hook基本上都是基于修改got表,从而达到hook拦截效果。比如,android中binder通信封装在libbinder.so里面,libbinder.so中和binder驱动打交道是通过系统调用ioctl,因此拦截ioctl并解析其中的参数,就可以获取b
本文參考《Android系统源码情景分析》,作者罗升阳。一、Binder库(libbinder)代码: ~/Android/frameworks/base/libs/binder ----BpBinder.cpp ----Parcel.cpp ----ProcessState.cpp...
转载 2014-08-11 19:19:00
305阅读
Android 框架是以 Binder 为基础搭建起来的,处处都离不开 Binder IPC, Android的native binder库为libbinder。其他第三方的binder库有libgbinder。
原创 2024-04-19 12:17:01
93阅读
Android中的RPC(IPC)是由Binder组件来实现的,虽然我们使用更多的还是AIDL,并不会直接使用Binder,但是了解了它能更有效帮助理解AIDL以及理解Android本身的一些原理和机制。 Binder的架构 与其他的Android系统的组件的架构类似,Binder也是由Java层封装,JNI,libbinder和driver组成。 Binder的主要组成有三个IInterfac
转载 2024-06-03 23:22:14
90阅读
在使用Android开发应用时,开发者们常常遇到“android android红色”的问题,通常是指应用程序中出现的红色错误提示或异常情况。这类问题不仅影响用户体验,还可能导致程序崩溃。因此,如何定位和解决这些错误成为了每位开发者必须掌握的技术能力。 ### 背景定位 在某些场景下,例如开发新应用或者对现有应用进行功能扩展时,开发者可能会面临“android android红色”错误。这类错
原创 6月前
181阅读
什么是WIFI WIFI是一种无线连接技术,可用于手机、电脑、PDA等终端。WIFI技术产生的目的是改善基于IEEE802.11标准的无线网络产品之间的互通性,也就是说WIFI是基于802.11标准的,但WIFI不等同无线网络。Android平台下的WIFI模块 简单介绍一下,WIFI模块的基本功能: 1. 开关WIFI 除了在WIFI设置界面可以开关WIFI,还有其他的方法可以设置,要查看这些开
转载 10月前
156阅读
Notification即通知,用于在通知栏显示提示信息。 在较新的版本中(API level > 11),Notification类中的一些方法被Android声明deprecated(弃用),其实基本上相当于全部弃用了,因为这个类本身方法就少得可怜。 Android官方声明弃用,一定有它的理由,
转载 2016-03-11 09:37:00
10000+阅读
2评论
二维码的定义:二维码 (2-dimensional bar code),是用某种特定的几何图形按一定规律在平面(二维方向上)分布的黑白相间的图形记录数据符号信息的。在许多种类的二维条码中,常用的码制有:Data Matrix, Maxi Code, Aztec, QR Code, Vericode, PDF417, Ultracode, Code 49, Code 16K等。  &nb
原创 2023-05-01 07:06:20
2214阅读
# 教你实现 Android 条件逻辑 在 Android 开发中,能够正确地实现条件逻辑是至关重要的。条件语句(如 `if` 语句)可以帮助我们根据不同的逻辑进行不同的操作。本文将带你从零开始实现 Android 条件逻辑,帮助你理解和掌握其中的基本概念与实现步骤。 ## 实现步骤 下面是实现 Android 条件逻辑的基本步骤: | 步骤 | 描述
原创 8月前
117阅读
一、前言、提出问题公司最近举行2011年度创新设计大赛,快年底了正打算写写2010年以来Android开发的心得与经验,正好同事出了个点子:假如A和B两个人分别在不同的地点,能不能实现这样的功能,让A和B之间可以互相感知对方的位置信息。于是整理了一下思绪,说白了分解开来就是两个方面的问题:一、实现信息的即时传递,二、实现基站/wifi、GPS的定位。1. 实现消息的即时传递:说到这个问题大家应该能
转载 2023-10-21 10:39:32
863阅读
android:excludeFromRecents="true"设置为true后,当用户按了“最近任务列表”时候,该Task不会出现在最近任务列表中,可达到隐藏应用的目的。
转载 2022-09-27 10:41:49
2841阅读
# 如何实现"Android android路径" ## 1. 整体流程 在实现"Android android路径"这个功能之前,我们首先需要了解整个流程。下面是实现该功能的步骤: ```mermaid erDiagram 理清需求 --> 学习Android开发基础 --> 编写代码 --> 测试代码 --> 发布应用 ``` ## 2. 详细步骤及代码 ### 1. 理清需
原创 2024-07-09 04:38:14
819阅读
1、本文重点介绍android studio的使用,做Android应用开发 2、主
原创 2022-12-10 07:10:03
1972阅读
1.前言最近的工作比较忙,等保测评和密评的项目比较多,但百忙之余自己也会做一些感兴趣的事情,比如渗透测试,我是今年上半年开始自学了一段时间web渗透的。而对于移动APP的渗透测试,最近也在自学中。以下是个人学习过程过程中的一些笔记和理解。2.Android基础2.1Android的结构、这篇文章写得很好,可以了解到Android的体系结构。其中要关注的就是Android的虚拟机(DVM)编译过程,
转载 2024-05-08 20:26:24
102阅读
使用VS2015调试Android C C++动态链接库VS2015相对于过去的IDE在跨平台方面做了很大的支持,支持对linux操作系统进行远程GDB调试,由于VS2015强大的C/C++调试功能,本文将介绍,如何用VS2015调试android的动态链接库,跟进行NDK开发。 首先需要去官网下载VS2015 社区版 这个版本是免费使用的虽然部分功能有所限制,但是已经够一般人进行使用了。安装方
转载 2024-07-26 11:03:26
540阅读
前言前段时间看到最近一直很火的Android组件化然后就自己撸了一个demo,期间遇到了不少问题以及坑,在此记录一下,具体可以看项目源码。组件化无非就是将我们App项目下的几个模块在com.android.application与com.android.library之间切换。如下图:分为modulelib(类库模块,一些基本工具类),modulemain(入口模块),moduleone(模块1)
转载 2024-02-22 12:32:31
315阅读
目录:01--准备工作QT 5.14.2Android NDKAndroid SDKJDK备注:如果QT 版本不是5.14.2 ,需要查询使用正确的版本匹配的NDK,否则会无法使用。下载链接见文末QT 5.14.2要点:确保QT 安装了Android组件步骤二: NDK SDK JDK 三兄弟的安装要点:1--最好新建一个文件夹,专门解压,后期省去很多不必要的麻烦;2--解压的路径不要有中文;3-
转载 2023-08-28 21:29:49
982阅读
android:adjustViewBounds 、android:cropToPadding
原创 2014-06-23 18:28:57
6413阅读
  • 1
  • 2
  • 3
  • 4
  • 5