4 jueme

尚未进行身份认证

不断学习,不断前进

等级
TA的排名 11w+

android 设置sim卡流量上限,获取sim卡实时流量,清除所有流量数据

设置sim卡流量上限,获取sim卡实时流量在系统的设置里面是有的,首先来看下系统的设置是怎样实现功能的。关于这个功能的类DataUsageSummary.java,先看一下设置流量上限的方法 private void setPolicyLimitBytes(long limitBytes) { if (LOGD) Log.d(TAG, "setPolicyLimitBytes...

2019-12-25 18:30:42

android 怎样删除sim卡中的联系人

这个功能我看了不少的资料,但总是删除不成功,我是在mtk 6.0上进行开发的。首先是通过"content://icc/adn/"来进行删除的,我发现这个根本就不行, public void deleteSIMContact(String name, String number) { String where = "tag='" + name + "'"; wh...

2019-12-24 15:21:49

android apk网络程序怎么bind少于1024的端口

对于 1024以内的端口,默认只提供给系统使用,外部应用是没有权限使用的,如果想要外部访问不带8080 ,则需要在服务端,设置一条如下iptable 指令;把端口号设置为80就可以省略不写。iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080 // 8080 是服务器绑定的端口号,也可以改换...

2019-10-22 14:03:30

android 关于SystemProperties的使用

SystemProperties在android系统里面使用的很广泛,用来保存一些简单的数据,使用起来非常简单SystemProperties.set("persist.test.flycom", "1");SystemProperties.get("persist.test.flycom", "2"); 还可以获取Boolean,Int,Long值 /** ...

2019-07-08 15:58:40

android 9.0 SytemUI锁屏界面日期不显示问题

发现在第一次开机时,锁屏界面是有日期显示的,然后解过一次锁,日期就不在显示了。是否显示在KeyguardSliceView.java里面控制的,private void showSlice() { Trace.beginSection("KeyguardSliceView#showSlice"); if (mPulsing || mSlice == n...

2019-04-16 17:53:47

android 关于prop属性

android通过SystemProperties的set和get方法来控制很多东西,一般上层添加一个控制开关可以使用这个方法,在系统里面存在很多个prop文件。它们分别是system/build.prop,system/etc/prop.default,vendor/build.prop,vendor/default.prop。下面分别来说下这几个文件的构成。1.system/build.p...

2019-03-22 14:58:28

Android GMS P测试与O测试变化及注意事项

GMS P的测试已经开始一段时间了,这里记录一下跟O的不同之处,资料主要来自MTK官网。一、Case数量增加(以Pgo项目为例,64bit项目double) a、CTS测试增加8万条,module增至320 b、增加CTS-INSTANT测试项目,module 48,1.3万条(13338)、64bit 13338,以实际为准; c、VTS测试增加约2...

2019-02-22 16:10:23

android的overlay机制

android 在很早时候就引入了overlay机制,目的是为了方便客制化,不需要修改源码,只需要修改overlay里的东西,就可以达到修改的目的。overlay分为两种,静态的overlay和动态的overlay。下面简单来说下这两种overlay:静态的overlay :这种overlay比较简单,把资源文件放在device目录对应的项目下面,原理就是在编译时直接引用overlay下的资源...

2019-02-16 11:51:02

android odex的反编译

odex 是 Optimized dex 的缩写,是优化后的dex文件,通过将 apk 中的 dex 文件进行 odex 优化,可以提升程序的启动速度,同时减小空间的占用odex 文件依赖系统中已经编译好的系统模块,一般是 /system/framwork 目录下的 jar 包,目的也是为了提高虚拟机的运行速度,可以说从 class 到 dex 是针对 Android 平台的一种通用优化,odex...

2019-01-28 11:25:41

android 8.0客制化壁纸的位置

在8.0之前的版本,overlay的frameworks资源都会编译到framework-res.apk。但是在8.0的系统,客制化的资源,像壁纸,把framework-res.apk反编译出来,并不在里面。这个问题困扰我一段时间,无意间发现out目录下vendor\overlay\framework-res__auto_generated_rro.apk这个apk。从名字可以大概知道它的作用,把...

2018-12-06 14:58:43

android 工厂测试TP测试的问题

所谓的TP测试,就是测试TP有没有问题,一般都是通过划线来检验。很多公司用的都是类似于下面的,在方格上面移动手指,方格变成色,说明这个地方的TP没有问题。但是存在这样的问题,当手指移动速度过快时,有些方格没有变颜色,这给工厂生产测试时带来了一定的麻烦,因为他们测试的速度比较快,又要去重新划线,浪费时间。我研究了一下这部分的源码,发现主要原因是View的onTouchEvent响应速...

2018-12-06 11:17:08

android 内置第三方apk

这个功能比较容易实现,只要把apkf放到$(TARGET_OUT_VENDOR)/operator/app目录下面LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := FacebookLOCAL_MODULE_TAGS := optionalLOCAL_SRC_FILES := Facebook.apk...

2018-11-08 16:01:18

android 添加灭屏手势动画功能

 首先解释一下这个功能,在灭屏时,在屏幕上面进行一些滑动的操作,实现一些功能,像亮屏,进入apk。还是直接上图吧,看的清楚点。下面来说下实现这个的思路。这个功能需要驱动上报键值,比如说我在屏幕上画了一个V,驱动就要向上面上报一个事件,所有的上报事件都在PhoneWindowManager.java里面处理。@Overridepublic int interceptKeyBe...

2018-10-24 11:11:59

android 常用的adb命令

显示最上层Activity的名字 adb shell dumpsys activity | findstr "mFocusedActivity" 启动一个activity adb shell am start -n com.example.test.testactivtiy/com.example.test.testactivtiy.MainActivity 发送一个广播 adb s...

2018-08-27 14:51:12

Android8.0 遇到的坑

1.广播问题取消了大部分静态注册的广播,如果非要使用静态的广播,发送广播的时候必须指明接收广播的包名和类名。当然也必须在AndroidManifest.xml里面注册Intent it = new Intent("com.example.test.broadcast");it.setComponent(new ComponentName("com.example.test", ...

2018-08-24 17:48:51

android 怎样让apk默认有权限

很多内置到系统的apk,在第一次使用时会弹出权限的窗口。而系统的一些apk默认就有权限,说明系统在初始化的时候就给了这些apk权限。在framework层找到了相关的代码,都在DefaultPermissionGrantPolicy.java中,主要是grantDefaultSystemHandlerPermissions这个函数private void grantDefaultSystem...

2018-08-22 16:47:06

android 关于系统系统签名

当需要一些权限的时候就会用到系统的签名,有两种方式可以获得系统签名。首先必须在AndroidManifest.xml的manifest节点中添加 android:sharedUserId=”android.uid.system”。1.利用系统的签名文件 在android6.0和之前的版本可以用这条命令,java -jar out/host/linux-x86/framework/signapk.j...

2018-07-11 10:41:17

android 调用第三方so库

首先要知道这个第三方的so库是不是按jni标准写的,如果是那就简单了,直接写个native调用就行了。如果不是那就比较麻烦了,必须要把这个so库里面的函数封装一下在调用,下面进入正题。假设这个库放在/system/vendor/lib下面,名字为libtest.so,我们要调用的方法是get_status,我分别列出在第三方的app和framewok怎样调用。首先是在第三方app的调用,这里的核心...

2018-07-06 20:54:18

android 屏幕方向

Activity的方向可以在AndroidManifest.xml文件里面去配置 android:screenOrientation;如果需要主动去设置方向可以调用setRequestedOrientation方法;当机身发生改变时屏幕的方向也会发生改变。试想这样一种情况,假如我要在只要屏幕发生改变时去执行一些操作,这个可能是AndroidManifest配置的,也有可能是Activity主动调用...

2018-06-30 15:28:06

android 修改launcher行数和列数

Launcher3桌面的行数和列数都是在InvariantDeviceProfile.java和DeviceProfile.java中动态计算的,xml中无法配置。Note:L版本无InvariantDeviceProfile.java,是DynamicGrid.java,但是计算方法都是一样的。InvariantDeviceProfile中用InvariantDeviceProfile来配置各种...

2018-06-30 14:27:42

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。