自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

海月汐辰

日拱一卒无有尽 功不唐捐终入海

  • 博客(18)
  • 资源 (31)
  • 收藏
  • 关注

原创 2021-11-29 AndroidR WiFi可以上网,但是Settings里提示“No Internet”的问题的一个解决方法,通过ping一个网站确认网络的情况。java ping 网络的代码。

一、日前遇到这样一个AndroidR WiFi可以上网,但是Settings里面提示“No Internet”。然后用设备的wifi连接到手机打开的热点不会有这样的提示。通过一翻折腾和了解现在android 增加一项检测网络性能的类NetworkCapabilities,通过这个类可以判断出网络的性能,但是默认是连接到Google的服务器,所以你懂的。二、NetworkCapabilities 类 frameworks\base\core\java\android\net\NetworkCap...

2021-11-29 15:25:58 2486

原创 Android : adb logcat 过滤多个log 用adb shell “ logcat | grep -E ‘strings1| strings2 ‘ “ 形式

一、有时候想看多个指定字符串的log,可以用下面的形式,注意加-E和单引号:adb shell " logcat | grep -E 'strings1 | strings2 ' "二、实际运行效果:

2021-11-29 10:02:59 7028 1

原创 使用Process运行程序提示error: incompatible types: java.lang.Process cannot be converted to android.os.Proces

一、在android framework sevice里面 添加下面的代码,使用Process java中运行第三方程序,编译的时候提示error: incompatible types: java.lang.Process cannot be converted to android.os.Proces。 private boolean CheckInternet(){ String result = null; try { String ip = "www...

2021-11-27 15:00:42 1947

原创 Android C++语言 通过Binder通信调用activity: [android.app.IActivityManager] 服务发广播

一、这里拿电池问题警告框的例子来学习一下C++语言 通过Binder通信调用activity: [android.app.IActivityManager] 服务发广播。二、vendor\mediatek\proprietary\frameworks\opt\batterywarning\batterywarning.cpp 发广播的地方。bool sendBroadcastMessage(String8 action, int value){ ALOGD("sendB...

2021-11-23 20:24:15 3228 1

原创 2021-11-19 C语言readdir()函数,读取目录下的文件和目录函数,通过d_type DT_REG可以知道是目录还是常规文件。

一、C语言 readdir函数用来读取指定的目录流的目录项到一个dirent结构体指针中,并将读取指针设置为下一个目录项的位置。二、结构dirent体定义如下:struct dirent{ ino_t d_ino; //d_ino 此目录进入点的inode ff_t d_off; //d_off 目录文件开头至此目录进入点的位移 signed short int d_reclen; //d_reclen _name 的长度, 不包含NULL 字符 unsi..

2021-11-19 16:07:00 6862

原创 Android mk文件 LOCAL_INIT_RC 将RC文件编译到/system/etc/init或vendor/etc/init,system\core\init\init.cpp解析这些rc

一、看下面的Android.mk 的,里面有个LOCAL_INIT_RC,那这个什么意思呢?二、编译宏LOCAL_INIT_RC用于将服务相关的RC文件编译到相应位置。上面的Android.mk通过LOCAL_INIT_RC将对应的batterywarning.rc编译到/system/etc/init目录中。三、 来看一下batterywarning.rc,可以看出sys.boot_completed等于1的时候就执行这个bin文件。四,那在哪里解析这个rc文件呢?这个问题...

2021-11-19 10:56:02 5091

原创 2021-11-18 Android APP安装后不在桌面显示图标的一个方法

一、有时候安装一个app,不想在桌面上显示图标,而是在其他地方调出这个程序。要想在桌面不显示图标,只需注释掉APP入口Activity中的<category android:name="android.intent.category.LAUNCHER" />即可,或者把下面的LAUNCHER改成DEFAULT也是可以。二、Android 系统里面温度提示框就是用这个形式,不显示图标,然后收到广播后显示activity。 1、vendor\mediatek\prop...

2021-11-18 20:08:39 14916

原创 2021-11-18 adb发送广播应用收不到的问题,BroadcastQueue: Background execution not allowed: receiving Intent { act=

一、这里我用adb发送广播应用收不到的问题,提示:BroadcastQueue: Background execution not allowed: receiving Intent { act=,我这里是android11 MTK平台。二、出现这个问题的原因是Android O版本以后google对隐式广播(Implicit Broadcast)的限制更加严格了,这就导致了apk在O版本之前的版本上好用,在之后的版本上达不到预期的效果。三、那就修改成显式广播发送。 1、A...

2021-11-18 10:59:50 6422

原创 2021-11-18 SecureCRT中文乱码解决方法

一、选项-会话选项,SercureCRT的编码格式是“Default”,也就是默认的编码格式,我们改为“UTF-8”,如图所示。二、搞定。

2021-11-18 09:22:18 1283

原创 2021-11-12 Android 11 长按按键进入恢复出厂设置的实现方法-PhoneWindowManager里面用发广播的模式

一、frameworks里面PhoneWindowManager.java接收kernel 上传上来的按键信息,然后发广播进行恢复出厂设置。核心是发广播。二、frameworks里面处理按键的部分的代码如下:--- frameworks/base/api/test-current.txt | 2 +- .../base/core/java/android/view/KeyEvent.java | 4 +++- frameworks/base/core/res/r..

2021-11-12 18:23:55 2847 1

原创 2021-11-12 Android adb logcat 查看 app 闪退崩溃crash的信息方法,“-s“选项 和 *:S <tag>,adb logcat -s AndroidRuntime。

一、我这里开机后settings会clash,我想知道这部分的错误log。二、如果直接adb logcat,也是可以打出这个信息,但是很难找到这个信息,输出的log太多了。三、那如何过滤掉那么多无用的信息,只看到clash信息呢? 1、"-s"选项 : 设置输出日志的标签, 只显示该标签的日志; 2、*:S <tag>' prints only <tag>, '<tag>:S' suppresses all <tag&g...

2021-11-12 16:38:31 6973

原创 2021-11-11 VirtualBox 安装windows 不全屏显示的解决方法

一、现象如下:二、解决方法 1、先设置scale factor 2、然后设置相应的分辨率就可以了,也不会变形。三、参考文章Oracle VM VirtualBox无法全屏显示_lizhsu22的博客-CSDN博客VirtualBox安装Windows7系统教程 - Debug客栈https://jingyan.baidu.com/article/2c8c281d7d385f0008252a33.html...

2021-11-11 15:38:05 6429

原创 2021-11-09 PMIC RK817 处理POWER键流程linux 部分的简单分析,dts 中会用 interrupt-parent interrupts去处理按键的中断。

一、硬件电路分析 先来看pmuc rk817 power按键的电路原理图,power 按键是连接到pmic,pmic 检测到按键事件后在通过PMIC_INT_L (GPIO0-A3)发信号给cpu。二、软件上的实现 1、从上面的原理图知道PMIC_INT_L 是连接到GPIO0-A3,cpu需要处理这个gpio的中断事件,首先得配置dts。interrupt-parent = <&gpio0>; interrupts = &l...

2021-11-09 14:27:33 3998 2

原创 2021-11-05 在linux C语言中获取详细错误返回信息

一、有时候想知道错误的详细返回信息,以便分析,可以用strerror函数打印出来。 1、errno 是错误代码,在 errno.h头文件中; 2、perror是错误输出函数,输出格式为:msg:errno对应的错误信息(加上一个换行符); 3、strerror是通过参数 errnum (就是errno),返回对应的错误信息。二、测试实例 1、测试代码#include <stdio.h>#include <unis...

2021-11-05 17:44:08 2427

原创 2021-11-05 Linux 系统调用syscall,实例添加一个系统调用

一,简单介绍:系统调用是应用程序和操作系统内核之间的功能接口。其主要目的是使得用户可以使用操作系统提供的有关设备管理、输入/输入系统、文件系统和进程控制、通信以及存储管理等方面的功能,而不必了解系统程序的内部结构和有关硬件细节,从而起到减轻用户负担和保护系统以及提高资源利用率的作用。二、kernel添加一个系统调用,我这里的kernel版本是4.19。 1、include/linux/syscalls.h 里面添加asmlinkage long sys_getnumber(void...

2021-11-05 17:09:21 2072

原创 2021-11-4 SecureCRT下的串口不能输入的问题的解决方法-将原先默认选中的 RTS/CTS取消掉

一,想进入uboot模式,发现SecureCRT 串口不能输入,但是MobaXterm_Portable可以,说明硬件没问题。​​​​​​​二、解决方法:Session Options -> Connection -> Serial -> Flow Control,将原先默认选中的 RTS/CTS取消掉三、可以输入了。四、有价值的参考文章SecureCRT下的串口不能输入_wb453178064的博客-CSDN博客...

2021-11-04 20:22:43 5448

原创 2021-11-04 AndroidR 第三方应用添加系统签名方法加测试app源码

一,AndroidR 第三方应用添加系统签名方法,我这里是MTK平台上测试。二、网上介绍的方法有几种,我这里就只介绍一个我实际操作成功的,用signapk.jar 对apk签名。 1、 apk要想获得系统级app的权限需要在AndroidManifest.xml中的manifest节点中加入 android:sharedUserId="android.uid.system" 2、 找到源码中的signapk.jar包(./out/host/linux-......

2021-11-04 17:52:54 1931

原创 Window10 SecureCRT 等工具设置串口波特率为 1500000,出现设置不了或无效的问题.提示The parameter is incorrect.

一、Window10 SecureCRT 等工具设置串口波特率为 1500000,出现设置不了或无效的问题.二、解决方法,采用 3.3.5.122 或更老版本的旧驱动即可,下载链接Firefly | 让科技更简单,让生活更智能三、测试ok四、参考文章串口调试 — Firefly Wiki...

2021-11-02 13:58:40 5037 2

使用Android辅助功能AccessibilityService 进行自动化测试demo 源码

使用Android辅助功能AccessibilityService 进行自动化测试demo,可以获取目标app的控件id,输入内容以及自动点击按钮.

2024-06-07

2012-12-12 下载ndk编译出so和可执行文件,放到android 真机运行

下载ndk编译出so和可执行文件,放到android 真机运行。

2023-12-12

2023-06-16 Android app 使用opencv 调用jni在图片上添加文字,对图片进行模糊处理,源码实例学习

2023-06-16 Android app 使用opencv 调用jni在图片上添加文字,对图片进行模糊处理,源码实例学习。

2023-06-16

2023-06-16 Android Studio 使用CMakeList编译JNI ,源码

2023-06-16 Android Studio 使用CMakeList编译JNI ,源码,直接build build apk直接一部编译成apk

2023-06-15

2023-03-25 android app 用经典蓝牙socket方式数据传输实例

具体看https://blog.csdn.net/qq_37858386/article/details/129768181

2023-03-25

Android APP 用interface 接口的形式对jni进行回调,实例测试

Android APP 用interface 接口的形式对jni进行回调,实例测试

2022-09-28

Android app 使用android-serialport-api 实现串口通信 源码

Android app 使用android-serialport-api 实现串口通信 源码

2022-07-23

AndroidStudio-NDK开发 编译c代码提供so库和jar包 另外一个app调用,实例源码

AndroidStudio-NDK开发 编译c代码提供so库和jar包 另外一个app调用,实例源码

2022-07-22

Android 源码里面添加一个系统app,最简单的app demo实例

Android 源码里面添加一个系统app,最简单的app demo实例。

2022-02-22

hello_hidl.rar

1、AndroidR HIDL服务实现应用层到HAL层通信实例。 2、详细介绍https://blog.csdn.net/qq_37858386/article/details/120989600。

2021-10-27

es7243调试资料.zip

es7243调试资料

2021-06-07

iperf-2.0.5-master.zip

1、Android 网络性能测试工具iperf 工具源码 2、把该源码放到路径android sdk路径external路径下然后mmm external/iperf-2.0.5-master 就可以编译出arm可执行bin 文件iperf了。

2021-05-22

frameworks_services_jni_hardware_kernel.zip

Android 理解frameworks services jni hardware kernel 整个控制过程实例包括回调 包含app demo 和底层驱动。

2021-04-27

RK3288 Android7.1 USB wifi bluetooth 模块RTL8821CU 调试资料.zip

RK3288 Android7.1 USB wifi bluetooth 模块RTL8821CU 调试记录

2021-04-12

Android Studio 生成JAR包和调用JAR包方法 demo

1、Android Studio 生成JAR包和调用JAR包方法。 2、Android Studio 4.1.2

2021-03-08

RK3288-Android7.1-华为移远域格4G模块调试记录所有文件.zip

1、RK3288-Android7.1-华为移远域格4G模块调试记录所有文件 2、包含域格、移远和域haiwei的so库。 3、目前测试CLM920 MU909 EC25

2021-01-08

binder.zip

1、Android Binder 进程通信应用实例 2、Android 基于linux内核开发,linux内核提供丰富的进程通信机制,如pipe、signal、message、share memory、socket,但android采用新的进程间通信机制binder。相比之下binder进程通信机制在传输数据时候只执行一次copy,效率高而且节省内存。

2020-11-04

static_library_demo.zip

1、Android 编译成静态编译库a以及调用实例,包含C源码。 2、在android真机运行测试ok。

2020-11-02

android_app_server_demo.zip

Android 简单后端服务器的搭建方法 1.android后端服务器搭建,需要用到 jsp+java+tomcat。 2.简单发生和接受数据。

2020-10-22

2020-10-20 Ubuntu 16.04安装配置Samba服务每个用户可以用自己的用户名和密码登录自己的home目录以及共享特定的目录配置smb.conf

2020-10-20 Ubuntu 16.04安装配置Samba服务每个用户可以用自己的用户名和密码登录自己的home目录以及共享特定的目录

2020-10-20

jnicallbackdemo.zip

1、jni 回调demo 源码。 2、运行环境android studio。 3、实例测试,不停的往上层回调发送信息,log看很直观。

2020-09-27

analyze_hdmi_edid.zip

1、C语言 解析Hdmi edid 信息数据 源码包。 2、ubuntu环境下编译和运行。 3、EDID: Extended Display Identification Data(扩展显示标识数据)

2020-09-11

nextouch_jni_demo.zip

1、Android:配置NDK并编译JNI文件so库 APP调用jni源码实例 2、app调用jni接口。

2020-09-10

Android 开机自动启动一个Service

Google在更新Android8.0后对Service的权限越发收紧。导致目前想要启动服务必需实现服务的前台化,打开应用才能顺利启动service,否则在服务启动5秒后,系统将自动报错,会弹出一个提示窗口。实际测试得系统的app才能启动service。

2020-08-28

Android APP:开机自动启动app demo 源码 autorundemo.zip

Android APP:开机自动启动app demo 源码 Android启动完成会发出一个系统广播 ACTION_BOOT_COMPLETED,字符串常量表示为 “android.intent.action.BOOT_COMPLETED”,我们要做的是用BroadcastReceiver接收这个消息然后启动该程序。

2020-06-17

settingdatebasedemo.zip

demo的功能一是向setting数据库某个key写value,然后读出来。功能二是侦听settings数据库里面某个key的value,如果改变会有提醒。

2020-06-11

popupwindow_demo.zip

1、PopupWindow这个类用来实现一个弹出框,可以使用任意布局的View作为其内容,这个弹出框是悬浮在当前activity之上的。 2、实例源码。

2020-05-27

navigationbar.zip

Android 8.1实现底部虚拟按钮NavigationBar的点击隐藏与滑动显示整个过程需要修改的完整代码,包含下面几个完整文件。 frameworks/base/packages/SystemUI/res/values-sw372dp/config.xml frameworks/base/packages/SystemUI/res/values-sw600dp/config.xml frameworks/base/packages/SystemUI/res/values-sw900dp/config.xml frameworks/base/packages/SystemUI/res/values/config.xml frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarInflaterView.java frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java

2020-04-17

android linux i2c调试工具源码 i2c-tools-3.0.0.zip

1、 Android:i2c调试工具 i2c-tools 2、可以直接在android上编译。 3、或者用目录下的Makefile文件修改一下编译器路径进行编译。

2020-03-26

PreferencexmlDemo.zip

1、使用XML定义Preference。 2、运行环境android studio。 3、此方法有点过时,不太建议使用,但目前还可以用。让Activity继承PreferenceActivity,然后在重写onCreate方法,添加preferences.xml作为显示界面。

2020-01-02

PreferenceDemo.zip

1、使用Fragment 定义Preference 2、运行环境android studio。 3、Preference 是Android app中重要的控件之一,Settings 模块大部分都是通过Preference 实现的,这里将学习preference 使用方法。

2020-01-02

dynamic_register_jni.zip

1、JNI动态注册实例。 2、运行环境是Android studio。 3、动态注册是在JNi层实现的,JAVA层不需要关心,因为在system.load时就会去调用JNI_OnLoad,有就注册,没有就不注册。动态注册的原理:JNI 允许我们提供一个函数映射表,注册给 JVM,这样 JVM 就可以用函数映射表来调用相应的函数, 而不必通过函数名来查找相关函数(这个查找效率很低,函数名超级长)流程更加清晰可控,效率更高.。

2019-12-31

static_jni.zip

1、JNI静态注册实例。 2、运行环境Android studio。 3、静态注册原理:根据函数名来建立 java 方法与 JNI 函数的一一对应关系;在Java虚拟机加载so库时,如果发现含有上面两个宏定义的函数时就会链接到对应Java层的native方法,那么怎么知道对应Java中的哪个类的哪个native方法呢,我们仔细观察JNI函数名的构成其实是:以Java为前缀,并且用“_”下划线将包名、类名以及native方法名连接起来就是对应的JNI函数了。  其实就是:Java+包名+类名+方法名(native方法)

2019-12-31

dianzhen下位机AVRM16代码.zip

一、毕业有九年了,突然想起以前在大学时候用MFC写的一个汉字取模软件。主要的功能是在PC上获取汉字16X16点阵数据然后通过串口把点阵数据发送给AVR单片机点亮点阵。 二、下位机AVR单片机代码。

2019-12-20

MFC写的一个汉字取模软件

1、毕业有九年了,突然想起以前在大学时候用MFC写的一个汉字取模软件。主要的功能是在PC上获取汉字16X16点阵数据然后通过串口把点阵数据发送给AVR单片机点亮点阵。 2、这个是上位机MFC的代码。

2019-12-20

Canvas_draw.zip

1、运行环境android studio。 2、用canvas实现简单画板。 3、可以保存绘制的画板。

2019-12-05

interfaceservicecallback.zip

Android  app:回调方式实现Service向activity传递数据源码 运行环境:android studio

2019-11-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除