自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 收藏
  • 关注

原创 Android - failed to set system property

进程将解析init.rc和启动属性服务。一旦收到设置“ ctrl.start ”属性的请求,属性服务将使用该属性值作为服务。如果属性名称以“net.”开头,当设置这个属性时,“net.change”属性将会自动设置,以加入到最后修改的属性名。如果属性名称以“persist.”开头,当设置这个属性时,其值也将写入/data/property。如果属性名称以“ro.”开头,那么这个属性被视为只读属性。发现确实不好使,然后意识到这个 ro开头的貌似是只读属性的,去网上确认了下,确实如此。

2024-05-27 11:48:27 928

原创 Android - 3段式耳机和4段式耳机

之前对此不太理解,误打误撞看到耳机硬件上的区别正好补充上这块的理解了。四节插头,也可以对应某些hifi播放器,做平衡接口,对应线路,左声道+,左声道-,右声道+,右声道-,把左右声道负极独立分离出来,不像前两种是共地的;四节插头,主要用于带线控或麦克风的耳机,对应线路,左声道+,右声道+,地-,麦克风+,耳机可以听歌,也可以使用线控或麦克风。常规三节插头,对应线路,左声道+,右声道+,地-,耳机主要用于版听歌,没有线控麦权;四节插头能听,也能说,在此功能上,区分两种接口排序。这篇博客介绍的很详细。

2024-05-14 18:17:31 189

原创 Android Q - 音频通路调试

这里记录一下正常情况下的配置文件吧speaker->喇叭,headphone->耳机,earpiece->听筒ReturnOKParameter::cmd0 DISABLE1 EABLE2 SETMODE:0handhold 11 ear2 spk4 hp1 mic_02 mic_1。

2024-05-14 18:13:29 1207

原创 我的创作纪念日

不知道写点啥,继续努力吧。

2024-05-10 22:05:05 188

原创 Android - 微信低版本登录提示版本过低

今天搞个特殊的,据说是微信低版本可以设置透明头像,简单总结一下操作步骤。这类的最好不要在自己的手机上测试,本次使用的是PC模拟设备来的雷电模拟器(模拟Android设备)NP管理器_3.1.1.apkcom.tencent.mm_1570e359-7.0.9.apk(7.0.9版本的微信)weixin8048android2580_0x28003036_arm64.apk(新版本的微信)

2024-05-01 10:00:00 1593 2

原创 ubuntu - 编译 linphone-sdk

业务需求需要定制sdk,首先声明我们需要的是在Android4.4上跑的sdk,因此本次编译的sdk最低支持为19(不同版本需要的环境不一致),编译过程较容易,难点在于环境配置。

2024-03-22 02:19:50 883

原创 ubuntu - 安装cmake

大概意思就是编译使用cmake的最低版本是 3.22,我自己的是3.10.2。这里记录的是编译cmake替换成3.22的步骤。1、下载 cmake 3.22。

2024-03-18 20:45:00 738

原创 Android Q - 应用保活记录(展锐平台)

有其他同事改过这方面的问题,仅在此作个记录,方便查阅。貌似就这三个地方,以后有其他再更新。

2024-03-06 18:15:00 667 2

原创 Android S - 添加按键,上报键值为0

之前遇到的情况是按键的映射不对,可以基于以下文件配置按键键值。

2024-02-19 19:30:00 658

原创 Sip - Ubuntu 配置 miniSIPServer 服务器(测试用)

客户提供的账号过期了,简单搭建 SIP 服务器,以便测试使用。个人认为这个配置起来最为简单,且测试功能足够。官网miniSIPServer 可能是最容易使用的 VoIP(SIP) 服务器软件,VoIP 领域专家可以轻松部署丰富的企业通信业务,例如、随我来、连选组、队列、IPv6 等。即使您在 VoIP 方面没有经验,也不用担心!仅需要就可以搭建自己的 VoIP 系统,请参考了解更多细节。开发环境 ubuntu 16.04 LTS。

2024-01-12 16:15:51 933 2

原创 Android - 串口通讯(SerialPort)

最早的博客里就是用过 Google 提供的 demo,最近想再写个其他的demo发现用起来有点麻烦,还需要导入其他 module,因此在网上找到了也是自Google开源的Android串口通信Demo。话不多说,直接开搞。demo地址放在了最后。

2024-01-10 15:36:22 3430 3

原创 Android - CrashHandler 全局异常捕获器

用于线程因未捕获异常而突然终止时调用的处理程序接口。当线程由于未捕获异常而即将终止时,Java虚拟机将使用thread . getuncaughtexceptionhandler()查询该线程的UncaughtExceptionHandler,并调用该处理程序的uncaughtException方法,将线程和异常作为参数传递。如果一个线程没有显式设置它的UncaughtExceptionHandler,那么它的ThreadGroup对象充当它的UncaughtExceptionHandler。

2024-01-09 10:45:57 1249

原创 Android - app实现 A/B 升级

官网介绍如下:A/B 系统更新(也称为无缝更新)的目标是确保在期间在磁盘上保留一个可正常启动和使用的系统。采用这种方式可以降低更新之后设备无法启动的可能性,这意味着用户需要将设备送到维修和保修中心进行更换和刷机的情况将会减少。

2023-12-29 09:07:17 1239

原创 Android S - 重新生成 ro.build.display.id 属性

测试过程中发现删除 out/target/product/project/system/build.prop 后执行 make 编译也并不会重新生成,但是执行 clean 操作后就会重新生成,怀疑是在 build/ 下里定义的。一般编译后的可以在 out/target/product/project/system/build.prop 下找到属性值,或者通过 adb shell getprop ro.build.display.id 打印出来。(注:部分内容已做屏蔽)可以看到就是这里实际生成的,

2023-12-28 09:09:15 648

原创 adb - 设置系统时间

app中添加系统定时重启功能,但是等待时间过久,故通过 adb 直接设置系统时间,方便验证功能。记录过程如下

2023-11-17 13:46:43 2705

原创 Android Studio - 新版 logcat 过滤使用记录

由于 as 在每次升级都有很多问题,因此去年升级到Dolphin就一直未升级,Dolphin版本就可以在设置中打开新版的 logcat 过滤功能,觉得不太习惯又关掉了。这次刚好 asfp 的下载重新学习下新版的功能。在此简单记录下。我们可以在输入框输入 "p" 然后就会有提示 p 开头的过滤名称。旧版的只能在过滤包名的条件下再过滤一个名称,新版的可以自行创建过滤规则。输入包名也会有提示的。

2023-11-16 18:11:11 4355

原创 Android - adb shell (查找文件 find )

我这里的设备是执行过 root 和 remount 过的,否则可能在 push 后执行 chmod 755 busybox 赋予权限。

2023-11-16 10:04:13 3323

原创 Android Studio - 初识asfp(平台版 Android Studio)

这个就是官网了。使用环境需要再 Linux 下,我是在 ubuntu 环境中运行的。

2023-11-15 09:06:33 633

原创 ubuntu - 识别展锐设备(adb devices显示设备列表为空)

记录下实现步骤。

2023-11-15 09:05:56 324

原创 Android S - 运营商NV配置,广电

首先尝试了展锐合并delta_nv.bin的方式,结果没有生效,依旧无法识卡,根据Android 12 NV配置指南验证生效,记录下操作步骤

2023-11-10 13:31:32 295

原创 Sipdroid - 内存泄漏问题

根据场景确定使用Activity的Context还是Application的Context,因为二者生命周期不同,对于不必须使用Activity的Context的场景(Dialog),一律采用Application的Context,单例模式是最常见的发生此泄漏的场景,比如传入一个Activity的Context被静态类引用,导致无法回收。尽量避免 static 成员变量引用资源耗费过多的实例(如 Context),若需引用 Context,则尽量使用Applicaiton的 Context。

2023-11-10 12:03:54 47

原创 Android Q - 记录添加以太网共享功能遇到的问题

这里定义了两个变量,一个是作为客户端,一个是作为服务端,在关闭以太网共享功能之后应该切换到client就对了,于是在更新状态的地方加了自己的判断方法。其实这个问题相对来说比较严重,首先在出异常的地方加上 try catch 捕获异常,结果定位到了。主要问题有两个,一个是空对象导致系统崩溃,另一个是关闭以太网共享之后无法正常通过网线上网。于是在方法开始前打印了下 iface,结果发现这里传了个 null,加上判空处理就好了。2、关闭以太网共享之后无法正常通过网线上网。这个经添加日志发现,是在。

2023-11-09 23:40:43 360 3

原创 ubuntu - 压缩文件及分包

解释:tar cvzpf - xxx(文件名) | split -d -b 4G(每个包大小) xxx(解压后文件名)解释:tar -zvcf xxx.tar.gz(压缩后的文件名) xxx/(需要压缩的文件目录)################## 递归删除目录下的 .git 目录,命令如下。################## 压缩源码目录。################## 合并压缩包。################## 分割压缩包。################## 解压压缩包。

2023-11-09 23:01:23 333

原创 Android Q - 相机过渡界面默认角度

由拍照切换至录像时,冻屏方向在此处修改。

2023-10-24 17:42:18 46

原创 Android S - 禁用振动功能

但是在Android S 上并没有找到这个类,有些奇怪,检索一下 hasVibrator() 方法,除去 systemUI 和 tests 的文件也就红框中的包含定义了。驱动部分不太清楚,默认是配置了的,但是我们的硬件上并没有马达,于是要在上层去掉相关的逻辑。,感觉可以了,编译验证,发现 make framework 并未生成 framework.jar 文件 ~~~查看这些类的注释,发现 SystemVibrator 的注释为。如果有无法开机的情况试试删除以上文件。中:控制主系统振动器的振动器实现。

2023-10-20 16:23:41 167

原创 Android Q - 通话过程中按数字键打开拨号盘发送dtmf

packages/apps/Dialer/java/com/android/dialer/dialpadview/DialpadKeyButton.java(拨号盘的数字 button )packages/apps/Dialer/java/com/android/incallui/DialpadFragment.java(通话中的拨号盘)查看源码发现默认在通话中,按数字键是没有反应的,也就是说我们要实现这个需求,首先得按数字键后显示拨号盘,接着实现点击效果。由于直接在当前页面按数字按键,实现按键监听即可,

2023-08-18 10:32:09 261

原创 Android S - 编译问题

建议选择 14.04 版本的 64 位 Ubuntu 系统,查看 Ubuntu 具体版本号的命令如下: lsb_release –a。其实这些东西都已经配置好了,我的问题是在编译到 vmlinux 时出的异常,网上也没找到原因,最后在编译时打印了内存使用发现是。解决办法是直接添加交换空间,因为本身运行内存就是16GB的,以防万一增加了8G。选择 Ubuntu 14.04 系统后,使用以下命令安装编译环境依赖的工具包。服务器上的代码直接能用,下到本地后编译不过,重新梳理了下编译环境。1. 查看Swap信息。

2023-07-27 15:10:47 415

原创 Android - Sipdroid 简单记录

发现在线程启动时,“RtpStreamReceiver.timeout == 0 || Receiver.on_wlan || now-lastsent > 500” 条件下会发送一个 rtp 包,此处感觉和发送 dtmf 很像,而且和 wifi 网络下提示音播放正常也对应上了,于是查看 Receiver.on_wlan 这个参数在哪里定义。将其默认值修改为 true,注释置为 false 的语句,再次运行,提示音播放成功。情况1:wifi 情况下正常,4G或者以太网情况下无法播放提示音。

2023-04-21 11:58:59 287

原创 Android Q - 替换系统录像、拍照提示音

简单记录下,客户希望在录像开始、结束以及拍照播放自己的提示音。这种应该属于系统提示音,先看一下是属于哪里的资源文件,然后替换就好了。开始录像的代码如上,发现最后有播放声音的方法,也就是说开始录像的提示音在 MediaActionSound 类中有定义,继续查看。只需要将需要替换的文件名与原定义的相匹配即可,最后需要将替换的资源文件添加拷贝的新软件的编译之中。

2023-02-21 11:33:57 262

原创 Android Q - Detected problems with app nativelibraries(please consult log for detail):libxxx.so:

预置的三方应用提示警告如下 Detected problems with app nativelibraries(please consult log for detail):libxxx.so:

2022-11-30 11:38:52 578

原创 Android Q - Signature|privileged permissions not in privapp-permissions whitelist(卡在开机logo无法开机)

预置到priv-app目录下的应用,如需申请signature权限,需在frameworks/base/data/etc/privapppermissions-platform.xml中进行额外的声明。

2022-07-18 09:25:05 810

原创 Android Q - 修改关机充电动画无电池显示

只展示了一部分,但是我们发现了present,也就是说源代码支持电池在位的判断,只是未写接口,不支持调用,那我们由此仿写一下就可以了。

2022-07-18 09:24:27 855

原创 Android Q - 修改关机充电动画(竖屏改成横屏显示)

简单记录下,展讯的模块关机充电动画部分是由 miniui 开发的,本次修改内容为将竖屏显示修改为横屏显示,代码路径如下:代码中首先会初始化资源,也就是根据分辨率选择对应的图片。。如果不清楚的可通过 adb 查看, 所用的设备则为 gxxh,因此需要将对应的图片资源旋转至合适的角度。具体怎么看从哪旋转的话,就是先看好横屏后的方向,然后推敲由竖屏需要旋转多少度才能到现在的度数。其次需要在 ui.c 中设置图片文件的位置,数字部分由以下代码设置。其中注意到,图片的位置都是由 gr_blit 的函数控制

2022-06-21 18:33:46 1287

原创 Android Q - 设置默认输入法

由于是默认系统语言改成了中文,输入法也需要对应的改成中文输入。设置过程分成两部分,一个是 adb,另一个是代码设置。在此,简单记录下。设置系统已打开输入法(多个输入法用":"隔开) adb shell settings put secure enabled_input_methodscom.emoji.keyboard.touchpal.go/com.cootek.smartinput5.TouchPalIME:com.android.inputmethod.latin/.LatinIME例如: 感

2022-06-17 14:05:28 1261

原创 Android4.4 - 默认首次开机后不开启数据开关

简单记录下,首先找到 Settings 数据库,其次修改默认值。路径:frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java可以看到默认是打开的,于是在工程目录下修改为 false , 但是开关显示仍然异常,因为这个是基于单卡项目修改的双卡,第二张卡开关显示打开,但状态栏是关闭的,于是认为是默认值有问题。首先想到的是 ConnectivityServ.

2022-05-19 11:38:00 598

原创 Android Q - Settings 页面添加一级菜单

Android Q - Settings页面添加二级选项_感觉不怎么会的博客-CSDN博客本次修改基本同上一篇文章,在一级菜单中的最后添加 OTG 选项,简单记录下。文件清单,依旧位于 packages/apps/Settings :res/xml/top_level_settings.xml res/xml/otg_settings.xml src/com/android/settings/otg/OTGPreferenceController.java src/com/android

2022-05-07 17:51:56 2206

原创 Android Q - Settings 页面添加二级选项

简单记录下,本次修改为网络设置中添加一个以太网的选项开关。效果如下:开始修改:1

2022-05-06 10:22:00 2269

原创 Android - 浅谈 Handler 机制

熟悉 Android 开发的小伙伴都知道,不能再非主线程中修改 UI 控件,而且当时老师告诉我们就是在非主线程的代码修改 UI 控件可以用 Handler。以至于后来我也都是这么做的,最近有人问我这个自定义的 Handler 为啥下面都是黄色的,是不是他写的不对。于是点进去看了下源码,发现原来我用了这么多年的构造早就是被废弃了的,而我还在坚持。This Handler class should be static or leaks might occur (anonymous andr...

2022-03-23 20:26:21 2700

原创 Android - 跨应用访问数据实战之 ContentProvider

四大组件之一,但我却没有一次尝试过,只是曾经在文档中看到过这么个东西,为了弥补自己的遗憾,特此记录下本次尝试。 虽然只有查看和添加,但删除和更新的方法也都实现了,并且内容全部写死了,可以通过 Button 的点击事件来查看。CP-demo 可实现增删改查,cp-2只写了查看。内容提供程序以一个或多个表的形式将数据呈现给外部应用,这些表与关系型数据库中的表类似。行表示提供程序收集的某种类型数据的实例,行中的每一列表示为一个实例所收集的单个数据。 因此,看过了...

2022-03-22 11:18:47 5948

原创 Android - 跨应用访问数据实战之 SharedPreference

Android 给每个 APK 进程分配一个单独的用户空间,其 manifest 中的 userid 就是对应一个 Linux 用户 ( Android 系统是基于Linux ) 的。个人尝试过发现 SharedPreference 有两种方法可以实现:1、围绕操作模式(高版本不可用,已废弃)2、围绕Shared User Id先说第一种,由于之前做的项目是基于 Android 4.4 的,因此可以成功运行,高版本会直接崩溃。代码如下:/* 写入数据*...

2022-03-18 17:37:22 4045

空空如也

空空如也

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

TA关注的人

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