自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(74)
  • 资源 (6)
  • 收藏
  • 关注

原创 Android 把自己的 app当做手机launcher App

要实现一个开发板只运行一个app,开机运行,并且好像整个app就像是系统一样的效果:第一种实现方法:通过监听开机广播 实现开机启动APP(这种方法经测试后,首先会进入系统launcher页面后大概10秒后启动自己的app,不是我要的效果)1.1 写一个广播接收器,用来接收手机开机广播public class BootBroadcastReceiver extends Broadcas...

2018-09-30 16:06:52 6170 3

原创 Android Studio 之 gradle下载很慢、版本问题

如果可以,系统提示说建议升级gradle版本时,建议取消不要更新,因为一旦更新,问题很多;首先第一个问题:下载慢,而且一旦开始停不了,哪怕关闭AS再重启电脑都是联网再下载:第一种方法:在所在项目文件夹下:项目根目录/gradle/wrapper/gradle-wrapper.properties文件里面修改distributionUrl=https://services.gradle....

2018-09-26 11:47:04 20200

转载 【转】Android之自定义设备管理

需求:控制手机的摄像头和录音全部禁用~    这篇文章使用android提供的设备管理器类DeviceAdminReceiver ,来实现禁用手机摄像头的功能,还能够改变密码,锁屏,重启等功能,具体功能请去查API,如果我没记错的话有5千多行... ... 但是这篇文章主要就介绍常用的几个功能需求 = = 下面看代码:1.首先你需要先创建xml文件如上图所示。2.在device_a...

2018-08-14 15:58:56 920

原创 Android之JNI① AS3.0以下DNK下载配置和第一个JNI程序

一、JNI介绍JNI(Java Native Interface):一个协议,这个协议用来沟通java代码和外部的本地代码(c/c++), 外部的c/c++代码也可以调用java代码。1.1 C语言的优势:①效率上 C/C++是本地语言,比java更高效;②代码移植,如果之前用C语言开发过模块,可以复用已经存在的c代码;③java反编译比C语言容易,一般加密算法都是用C语言编写...

2018-08-13 13:43:51 425

原创 Android 蓝牙BLE功能的开发

写在前面的注意:蓝牙4.0要求版本是在4.3(18)以上,所以需要注意一下sdk版本。 查看蓝牙地址(看型号):设置-->通用-->关于手机-->状态信息-->蓝牙地址Android BLE 蓝牙4.0开始的低功耗技术。在BLE协议中,有2个角色:周边(periphery)和中央(Central),中央设备扫描,寻找广播;外围设备发出广播。工作流程:Scan--...

2018-08-13 11:15:02 432

转载 Android系统权限和root权限的获取以及应用权限列表

Android权限说明Android系统是运行在Linux内核上的,Android与Linux分别有自己的一套严格的安全及权限机制。一、linux文件系统上的权限-rwxr-x--x system   system       4156     2012-06-30 16:12        test.apk.“-rwxr-x--x”代表的是相应的用户/用户组及其他人对此文件的访问权...

2018-08-09 14:43:52 17877 1

转载 Android 系统权限之SuperSU 模拟器root

android 开发过程中程序很多时候免不了需要对系统目录下的内容进行操作,虽然android的内核是linux系统,但是在linux中切换到root下的方式是sudo root,但是在的android中并没有提供我们su文件。So我们要向需要root的系统中添加su文件,同时改变su二进制文件的权限。原材料android 模拟器 supersu.apk supersu.zip步骤...

2018-08-09 11:48:07 7815 1

转载 【转】Android开发中,手把手教你root Android系统

因为从事的是智能家居相关行业,用的系统也是android系统,在某些场景下可能需要拿到系统的root权限。下面就手把手教大家去拿到app的root权限和adb的root权限,比如一般手机在出厂的时候,开关机动画都是固定的,但是如果有一个需求就是需要你动态的去切换开关机的动画的时候,可能就需要你拿到root权限,然后对system/media(手机目录,开关机动画不一定全部在这里)的开关机动画进行操...

2018-08-09 11:22:05 4679

转载 Android 工具之系统五层框架体系结构详解

这篇是五层架构,比上篇《Android 工具之系统四层体系结构详解》四层架构多出HAL层;从下图中可以很清楚得看出,整个架构可以分为五大层次:System Apps:即系统应用层,这一层中都是我们使用手机时都会直接接触到的各种应用。 Java API Framework:即 Java 接口框架层,这一层是为了上层应用提供各种接口。 Native C/C++ Libraries &amp...

2018-08-08 13:21:25 4174

转载 Android 工具之系统四层体系结构详解

这是常见安卓系统体系结构图,还有一种是在C库与底层中间加了一个HAL层,《Android 工具之系统五层框架体系结构详解》。这篇主要说这种四层结构体系:很明显四层:接下来一一讲解:Java应用程序层:Android会同一系列核心应用程序包一起发布,该应用程序包包括客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。这些应用程序...

2018-08-08 13:12:19 2661

转载 常见14种手机传感器

手机传感器原理   https://jingyan.baidu.com/article/c35dbcb0fffe568916fcbc0c.html传感器Sensor就是手机里那些可以被测量并且能按照一定的规律转换成可用输出信号的器件或装置。一般这类传感器都是由敏感元件以及转换元件组成。手机上的那些能够通过芯片来感应的元器件,如反应距离值、光线值、温度值、亮度值和压力值等。在手机上增加传...

2018-08-08 11:35:06 24368

原创 Android 工具之mkDir/mkDirs区别和Environment下的文件路径

1.java mkdir()和mkdirs()区别mkdirs()可以建立多级文件夹, mkdir()只会建立一级的文件夹, 如下:new File("/tmp/one/two/three").mkdirs();执行后, 会建立tmp/one/two/three四级目录new File("/tmp/one/two/three").mkdir();则不会建立任何目录, 因为找不到...

2018-08-08 11:09:22 737

原创 Android 报错之 adb 不能打开

1、任务管理器 kill掉adb 或者重启adb server2、查看任务管理器没有adb,猜测是某个程序占用了adb端口5037为adb默认端口 查看该端口情况如下:查看:cmd —— netstat -aon|findstr "5037" TCP    127.0.0.1:5037         0.0.0.0:0              LISTENING       5...

2018-08-08 10:30:19 612

原创 Ubuntu 12.04 使用root用户登录桌面

首先是在按照上篇的进入单用户模式在那里输入的下面命令,但提示打不开视图,但总算可以sudo之后不再提示没有权限了,再次进入终端,输入:sudo gedit /etc/lightdm/lightdm.conf在图形编辑界面最后添加 allow-guest=false , 保存之后sudo apt-get remove gdm-guest-session或者sudo restart lightdm...

2018-08-02 14:29:01 1507

原创 Ubuntu12.04进入单用户模式重置密码(忘记密码)

首先,如果我们可以在终端输入命令“sudo passwd”,然后输入当前用户的密码后”Enter”。终端会提示我们输入新的密码并确认,此时的密码就是root新密码。修改成功后,输入命令 su root,再输入新的密码就ok了。如果不记得root密码,而且被提示没有权限的时候,要进入单用户模式了,首先选择重启,长按Shift(有时候长按shift或Esc没有效果的话,鼠标试下多次单击vm中的...

2018-08-02 10:29:44 4594

原创 Android 相机2之常用工具代码(预览方向、预览尺寸、全屏显示、分辨平板)

2.1设置相机展示方向public static void setCameraDisplayOrientation(Activity activity,int cameraId, android.hardware.Camera camera) {    android.hardware.Camera.CameraInfo info =            new android.hardw...

2018-07-30 10:42:06 2678

原创 Android 相机1 之Camera1的最简单的使用(预览、拍照、变焦、特效)

Android中开发相机的两种方式Android系统提供了两种使用手机相机资源实现拍摄功能的方法,一种是直接通过Intent调用系统相机组件 + startActivityForResult得到相机拍照结果,这种方法快速方便,适用于直接获得照片的场景,如上传相册,微博、朋友圈发照片等。另一种是使用相机API来定制自定义相机,这种方法适用于需要定制相机界面或者开发特殊相机功能的场景,如需要对照片...

2018-07-30 10:00:55 2834

转载 手机CPU知识扫盲 浅析手机CPU架构与原理(新手必看)

CPU是手机上面最复杂,最贵的Soc(芯片),担任的也是手机中大脑的位置,是手机跑分性能的决定性硬件。智能手机发展到今天,各大手机CPU厂商也从春秋战国逐渐到了现在四国鼎立的时代(高通,MTK,三星,苹果A系列)。当然最大的CPU厂商还是Intel,只不过intel的主力是在x86架构的处理器,主打PC与服务器产品。而我们今天的主角还是ARM架构的移动端处理器(手机CPU)。一、我们先来看看手机C...

2018-06-03 19:13:06 1751

转载 Android工具之开发根据Json直接生成Java Bean方法总结

方法 一:使用在线生成工具:在线JSON转JavaBean工具http://www.atool.org/json2javabean.php事例图: 这种方法的优点是在线方便,使用时打开网址把json格式的字符串复制斤去直接就能生成Bean对象文件下载即可,缺点是不能生成单一的Bean对象,会生成多个Bean对象文件,而且每一个class文件都会带有 Copyright 2016 aTool.org...

2018-04-28 16:27:52 1899

转载 Java面试题之为什么输出结果会是 good and gbc?

题目如下,求输出结果:(从内存情况分析)public class Example { String str=new String ("good"); //String str 时,把str引用放在栈空间,值为null,当new String 时,在堆空间生成一个 good,并且Str指向它 char[] ch={'a','b','c'}; //char[]ch 时,把ch引用放在栈空间,在堆...

2018-03-25 18:42:05 1042

转载 Android之E面试题①基于Message的进程间通信 Messenger解析

一、概述        说到Android进程间通信,大家肯定能想到的是编写aidl文件,然后通过aapt生成的类方便的完成服务端,以及客户端代码的编写。如果你对这个过程不熟悉,可以查看Android aidl Binder框架浅析;        当然今天要说的通信方式肯定不是通过编写aidl文件的方式,那么有请今天的主角:Messenger。ok,这是什么样的一个类呢?我们看下注释:This ...

2018-03-08 23:51:24 374

转载 Android之D面试题②进程保活的一般套路(1像素Activity/账号同步/Jobscheduler/系统服务捆绑)

       网上搜索一下进程常驻的方案好多好多,但是很多的方案都是不靠谱的或者不是最好的,结合很多资料,今天总结一下Android进程保活的一些方案,都附有完整的实现源码,有些可能你已经知道,但是有些你可能是第一次听说,(1像素Activity,前台服务,账号同步,Jobscheduler,相互唤醒,系统服务捆绑,等),经过多方面的验证,Android系统中在没有白名单的情况下做一个任何情况下都...

2018-03-05 23:20:59 1631

转载 Android之D面试题①关于 Android 进程保活,内存裁剪+优先级+同ID服务

本篇文章是后台杀死系列的最后一篇,主要探讨一下进程的保活,Android本身设计的时候是非常善良的,它希望进程在不可见或者其他一些场景下APP要懂得主动释放,可是Android低估了”贪婪“,尤其是很多国产APP,只希望索取来提高自己的性能,不管其他APP或者系统的死活,导致了很严重的资源浪费,这也是Android被iOS诟病的最大原因。本文的保活手段也分两种:遵纪守法的进程保活与流氓手段换来的进...

2018-03-05 23:00:48 1224

转载 Android之C面试题③高效加载大图多图解决方案,有效避免程序OOM(LruCache用法详解)

高效加载大图片        我们在编写Android程序的时候经常要用到许多图片,不同图片总是会有不同的形状、不同的大小,但在大多数情况下,这些图片都会大于我们程序所需要的大小。比如说系统图片库里展示的图片大都是用手机摄像头拍出来的,这些图片的分辨率会比我们手机屏幕的分辨率高得多。大家应该知道,我们编写的应用程序都是有一定内存限制的,程序占用了过高的内存就容易出现OOM(OutOfMemory)...

2018-03-04 22:33:25 974

转载 Android之C面试题②照片墙应用实现,再多的图片也不怕崩溃

       照片墙这种功能现在应该算是挺常见了,在很多应用中你都可以经常看到照片墙的身影。它的设计思路其实也非常简单,用一个GridView控件当作“墙”,然后随着GridView的滚动将一张张照片贴在“墙”上,这些照片可以是手机本地中存储的,也可以是从网上下载的。制作类似于这种的功能的应用,有一个非常重要的问题需要考虑,就是图片资源何时应该释放。因为随着GridView的滚动,加载的图片可能会...

2018-03-04 21:52:06 556

转载 Android之C面试题①高清加载巨图方案,拒绝压缩图片(BitmapRegionDecoder)

一、概述    对于加载图片,大家都不陌生,一般为了尽可能避免OOM都会按照如下做法:对于图片显示:根据需要显示图片控件的大小对图片进行压缩显示。如果图片数量非常多:则会使用LruCache等缓存机制,将所有图片占据的内容维持在一个范围内。其实对于图片加载还有种情况,就是单个图片非常巨大,并且还不允许压缩。比如显示:世界地图、清明上河图、微博长图等。那么对于这种需求,该如何做呢?首先不压缩,按照原...

2018-03-04 20:33:31 926

转载 Android之B面试题⑤HTTPS和HTTP的区别

1. 什么是 HTTPS?       HTTPS (基于安全套接字层的超文本传输协议 或者是 HTTP over SSL) 是一个 Netscape 开发的 Web 协议。       你也可以说:HTTPS = HTTP + SSL;       HTTPS 在 HTTP 应用层的基础上使用安全套接字层作为子层。2. 为什么需要 HTTPS ?       超文本传输协议 (HTTP) 是一个...

2018-03-04 10:52:34 1895

转载 Android之B面试题④访问网络,使用HttpURLConnection还是HttpClient?

     最近在研究Volley框架的源码,发现它在HTTP请求的使用上比较有意思,在Android 2.3及以上版本,使用的是HttpURLConnection,而在Android 2.2及以下版本,使用的是HttpClient。我也比较好奇这么使用的原因,于是专门找到了一位Google的工程师写的一篇博客,文中对HttpURLConnection和HttpClient进行了对比,下面我就给大家...

2018-03-04 09:23:40 692

转载 Android之B面试题③Context 上下文 你必须知道的一切

1、Context概念      其实一直想写一篇关于Context的文章,但是又怕技术不如而误人子弟,于是参考了些资料,今天准备整理下写出来,如有不足,请指出,参考资料会在醒目地方标明。      Context,相信不管是第一天开发Android,还是开发Android的各种老鸟,对于Context的使用一定不陌生~~你在加载资源、启动一个新的Activity、获取系统服务、获取内部文件(夹)...

2018-03-04 08:39:12 750

转载 Android之B面试题②两种注册、发送广播的区别(修改和中断有序广播)

前言:前面文章记录了Service的使用,这次来记录另一个四个组件之一的BroadcastReceiver。主要介绍两种发送和注册广播的区别。BroadcastReceiver,广播接收者用于接收系统或其他程序(包括自己程序)发送的广播。一.注册广播在android中,我们如果想接收到广播信息,必须自定义我们的广播接收者。要写一个类来继承BroadcastReceiver,并且重写其onRecei...

2018-03-04 08:28:33 439

转载 Android之B面试题①服务两种启动方式的区别

Service是Android四大组件之一,也是可执行的程序,有自己的生命周期。创建、配置Service和创建、配置Activity的过程相似。和Activity一样,都是从Context派生出来的。——《疯狂android讲义(第二版)》一.Service的第一种启动方式采用start的方式开启服务使用Service的步骤:1.定义一个类继承Service2.在Manifest.xml文件中配置...

2018-03-03 13:03:34 449

转载 Android之A面试题⑦Binder设计与实现 - 设计篇

摘要Binder是Android系统进程间通信(IPC)方式之一。Linux已经拥有管道,system V IPC,socket等IPC手段,却还要倚赖Binder来实现进程间通信,说明Binder具有无可比拟的优势。深入了解Binder并将之与传统IPC做对比有助于我们深入领会进程间通信的实现和性能优化。本文将对Binder的设计细节做一个全面的阐述,首先通过介绍Binder通信模型和Binde...

2018-03-03 12:19:33 277

转载 Android之A面试题⑥Binder机制(C++)

一、 说明       Android系统最常见也是初学者最难搞明白的就是Binder了,很多很多的Service就是通过Binder机制来和客户端通讯交互的。所以搞明白Binder的话,在很大程度上就能理解程序运行的流程。       我们这里将以MediaService的例子来分析Binder的使用:l------ServiceManager,这是Android OS的整个服务的管理程序l--...

2018-03-03 09:32:18 871

转载 Android之A面试题⑤进程间通信(IPC)机制Binder简要介绍和学习计划

       在Android系统中,每一个应用程序都是由一些Activity和Service组成的,这些Activity和Service有可能运行在同一个进程中,也有可能运行在不同的进程中。那么,不在同一个进程的Activity或者Service是如何通信的呢?这就是本文中要介绍的Binder进程间通信机制了。        我们知道,Android系统是基于Linux内核的,而Linux内核继...

2018-03-03 08:34:25 494

转载 Android之A面试题④应用程序内部启动Activity过程(startActivity)的源代码分析

        上文介绍了Android应用程序的启动过程,即应用程序默认Activity的启动过程,一般来说,这种默认Activity是在新的进程和任务中启动的;本文将继续分析在应用程序内部启动非默认Activity的过程的源代码,这种非默认Activity一般是在原来的进程和任务中启动的。        这里,我们像上一篇文章Android应用程序启动过程源代码分析一样,采用再上一篇文章And...

2018-03-03 08:12:17 353

转载 Android之A面试题②Activity启动过程简要介绍和学习计划

        在Android系统中,Activity和Service是应用程序的核心组件,它们以松藕合的方式组合在一起构成了一个完整的应用程序,这得益于应用程序框架层提供了一套完整的机制来协助应用程序启动这些Activity和Service,以及提供Binder机制帮助它们相互间进行通信。现在,简要介绍Activity的启动过程以及后续学习计划。        在Android系统中,有两种操...

2018-03-02 00:01:37 3274

转载 Android之A面试题③应用程序启动过程源代码分析

        前文简要介绍了Android应用程序的Activity的启动过程。在Android系统中,应用程序是由Activity组成的,因此,应用程序的启动过程实际上就是应用程序中的默认Activity的启动过程,本文将详细分析应用程序框架层的源代码,了解Android应用程序的启动过程。        在上一篇文章Android应用程序的Activity启动过程简要介绍和学习计划中,我们举...

2018-03-01 23:58:28 927

转载 Android之A面试题①Activity的四种启动模式及其应用场景

首先介绍一下任务栈:(1)程序打开时就创建了一个任务栈, 用于存储当前程序的activity,所有的activity属于一个任务栈。 (2)一个任务栈包含了一个activity的集合, 去有序的选择哪一个activity和用户进行交互:只有在任务栈栈顶的activity才可以跟用户进行交互。 (3)任务栈可以移动到后台, 并且保留了每一个activity的状态. 并且有序的给用户列出它们的任务, ...

2018-03-01 23:28:03 1054

转载 Android工具之“android.intent.action.*”大全

ACTION列表常用ACTION如下:String"android.intent.action.ADD_SHORTCUT"动作:在系统中添加一个快捷方式。.String"android.intent.action.ALL_APPS"动作:列举所有可用的应用。String"android.intent.action.ANSWER"动作:处理拨入的电话。String"android.intent.ac...

2018-02-25 23:00:05 976

转载 Android转载之混淆技术

在上一篇文章当中,我们学习了Android程序反编译方面的知识,包括反编译代码、反编译资源、以及重新打包等内容。通过这些内容我们也能看出来,其实我们的程序并没有那么的安全。可能资源被反编译影响还不是很大,重新打包又由于有签名的保护导致很难被盗版,但代码被反编译就有可能会泄漏核心技术了,因此一款安全性高的程序最起码要做到的一件事就是:对代码进行混淆。 混淆代码并不是让代码无法被反编译,而是将代码

2018-01-08 15:05:17 342

电脑U盘控制

注意: 有密码,暂不建议下载,实在需要私我使用原因要密码。

2018-09-07

Android Ble 开发

Android Ble 开发, 功能包括扫描、连接、发送等,分为中央设备和外设蓝牙,有客户端和服务端2个apk源码

2018-08-13

Android 蓝牙基础功能的开发

Android 蓝牙基础功能的开发,功能包括扫描、连接、发送等,分为中央设备和外设蓝牙2个apk源码

2018-08-10

U盘擦除工具

一共有3个工具,数据恢复软件,硬盘分区工具,系统备份工具+痕迹擦除+还有一个没用过的

2018-08-10

安卓反编译软件jadx-gui.bat

一般是使用在bin目录下的jadx-gui.bat文件,双击之后选择apk文件即可反编译大部分代码;结合把apk后缀改为zip解压缩得到资源文件,很多apk文件经过反编译后几乎可以得到全部代码和资源。

2018-08-10

Camera1+GL的相机特效实现

基于Camera1和OpenGL的相机特效实现,后续还有一些相机相关的module,敬请期待!

2018-08-06

空空如也

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

TA关注的人

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