Android
文章平均质量分 83
十橙
CSDN 显示我21年码龄? 不能吧
展开
-
Android 源码环境下用Android.mk 导入aar
现在新的源码中很多app 已经切换到了Android.bp,不过目前Android.mk 还是兼容的。本文介绍在Android.mk 中导入aar 包,也就是apk 引用aar 的内容原创 2022-06-17 10:40:56 · 3079 阅读 · 5 评论 -
android 11 模拟器root 的一些尝试
20200329目的往模拟器(最好是arm 模拟器)system 和vendor 分区push 文件。通常系统root 后才可以push。现有资源网上的方法基本上都是基于下面github 上的方法,大同小异。https://github.com/0xFireball/root_avd已经做过的尝试不过上面github 上的方法是在 Android 7.1 Nougat 上测试的,在android 11 上行不通。按照上面github 上方法的步骤,遇到的主要问题是,我们需要push 一个su原创 2020-09-12 10:36:05 · 3588 阅读 · 4 评论 -
gradlew 编译中的ANDROID NDK 环境变量
系统环境 windows 10 + gradle 6.1.1Android Studio 配置当前使用Android Studio 构建app,使用NDK 的话,会有两处配置项(其实非必须配置)。local.properties 用ndk.dir 指定ndk 路径(含版本号)删除local.properties 中的dir配置,在app/build.gradle 中配置 android{ndkVersion}。注意此版本号对应的ndk 版本需存在,否则会报错。使用环境变量注意 windo原创 2020-09-11 18:37:01 · 7211 阅读 · 1 评论 -
android R preview 3 编译问题修复
错题提示错误关键输出error: external/seccomp-tests/Android.bp:20:13: unrecognized property "arch.mips"error: external/seccomp-tests/Android.bp:23:15: unrecognized property "arch.mips64"error: external/linux-...原创 2020-04-27 12:08:45 · 3228 阅读 · 2 评论 -
命令行创建android 模拟器
网上搜的到一些命令行创建模拟器的文章,但是都比较老了,有些参数不适用了。android 官网 的avdmanager页面有介绍如何用命令行创建模拟器。另外启动模拟器的命令没有在一个页面,在Start the emulator from the command line这个页面。不过这两个页面的命令都介绍的不全,都是些基础的。考虑到有些同学可能上网困难,摘一点贴在下面avdmanager...原创 2019-08-29 12:43:54 · 809 阅读 · 0 评论 -
Android P 访问非SDK 接口
为什么要访问非SDK 接口?为了让应用能获得更多的系统属性、资源,扩展功能等。在Android P 之前,我们可以使用反射来访问系统内部分 hide/private 的接口。下面是一个使用反射访问非SDK 接口的例子。P 之前访问非SDK 接口示例以java 反射为例使用java 反射获得默认数据卡SubId,进而获得数据卡的运营商名称。这里是两次反射。 //java refl...原创 2018-09-27 16:36:11 · 2538 阅读 · 2 评论 -
QSTile 的一点变化 Android O 与 Android N 相比
起因Android O 点击QSPanel 中的数据图标没法展开详情查看数据使用量,而在Android N 上可以的,所以想调查看看O 上有什么不同。 注:本文不涉及任何流程分析,只是单纯的想找回个功能,并借此描述一下O 和N 在tile 上的一点点不同。现象差异我们都知道在Android N 上QSTile 有两种展示形式: 1. QSPanel 半展开是点击icon 即开关...原创 2018-05-17 12:55:33 · 1986 阅读 · 0 评论 -
CSDN 博客代码格式莫名奇妙改了几次
CSDN 博客代码格式莫名奇妙改了几次,有些格式不便于阅读,有些文本变成了白色不可见。 为了减少时间成本,之前的博客样式不再维护了,抱歉。 之后再更新内容会以markdown 为主,相比富文本会少一些用颜色标记的重点,不过总比莫名其妙被改格式好。我另一个博客的地址:http://codesimple.cc/PS:之前的博客我改了部分格式,除非有内容更新,否则不再维护内容样式。 PPS...原创 2018-03-10 23:47:58 · 415 阅读 · 0 评论 -
使用FileProvider 分享文件
起因我们的截图应用在Android O 上使用分享功能的时候crash了,错误关键词:FileUriExposedException。 Google 一下发现这个问题从Android N 开始出现的,当你给使用 file:/// Uri 分享文件的时候会抛出这个异常。 但是奇怪的是我们在Android N 上使用分享功能的时候并没有出现问题,不管怎样有问题就要解决。 一句话概括,我们要做...原创 2018-02-24 15:06:34 · 22634 阅读 · 0 评论 -
APK瘦身最佳实践(Google I/O '17)
本文内容主要来自Google I/O 17 Best Practices to Slim Down Your App Size (Google I/O ‘17),有删改。介绍现有的和Google新带来的一些给APK瘦身的方法。因文本内容的局限性,不能展示实际操作演示,想看具体的演示请点击上面的链接。原创 2017-07-24 11:24:24 · 2449 阅读 · 0 评论 -
CropImageView android上的一个图片裁剪控件
CropImageView文前:本文非常容易让读者看的云里雾里,建议直接看效果图,觉得有用就去看源码吧。CropImageView的原型来自Cropimage_demo,是android上的一个图片裁剪控件。原作者的博客Android 自定义控件——图片剪裁,如果读者想要有更详细的了解,请转至原作者博客。之所以做这个控件是因为前段时间写了一个截图应用需要用到裁剪功能,现在把裁剪的控...原创 2017-07-16 22:52:27 · 4182 阅读 · 7 评论 -
DrawingView android上的一个自定义涂鸦控件
DrawingViewDrawingView的原型来自DrawingView-Android,是android的一个可涂鸦控件。可以设置画笔的粗细,颜色,撤销上一笔涂鸦,提供保存图片的接口。原创 2017-07-13 16:19:09 · 2917 阅读 · 1 评论 -
CollapsingToolbarLayout 收缩时状态栏颜色设置不生效
Android Design Support Library 中推出了一系列方便开发者实现Material Design concept app的widget,CollapsingToolbarLayout就是其中一个。 网上已有很多博客介绍CollapsingToolbarLayout的使用,所以今天我们不说这个widget怎么使用了,这里主要记录试一下在使用过程中遇到的问题。如果还不知道...原创 2017-04-19 19:11:26 · 7545 阅读 · 7 评论 -
【译】Quick Settings Tiles on Android 7.0
用户可以打开app是在2008年。早期的Android中就提供了小部件和通知,即使app没有打开,小部件和通知提供的额外面板也能用来显示重要的开关和信息。在新的Android 7.0(API 24)中,任何应用都可以创建快速设置图块(tile),以便快速访问通知托盘上可用功能的重要信息。翻译 2017-03-28 19:19:03 · 2973 阅读 · 0 评论 -
添加有源码apk到系统目录下编译(使应用拥有系统应用权限)
当我们的应用想要使用一些系统应用才能使用的功能时该怎么办呢?如何让我们的应用“变成”系统应用?本文介绍三种方法使得我们的应用变成系统应用。1. 给应用系统签名2. 不带源码直接放apk,mm编译3. 带源码mm编译原创 2017-02-16 18:17:58 · 6958 阅读 · 1 评论 -
小白编译android rom小记
前言: 我虽然是做android framework开发,但平时都是编译模块,要让我添加一个机型编译我还真不熟悉,前段时间花了点时间成功编了griffin,这里记录一下。正文: 一般来说如果一个机型做好了编译适配并添加到了官方编译列表里面(类似CM,MK等),我们下载了源码,source lunch编译就好了。 今天要说的如何编译一个还没有添加到官方编译列表的机型。下载源码首...原创 2017-01-11 12:03:04 · 10920 阅读 · 1 评论 -
使用dumpsys查看android系统服务信息
转载请注明出处:http://blog.csdn.net/aaa111/article/details/530681971. 什么是dumpsysThe dumpsys tool runs on the device and provides information about the status of system services. dumpsys这个工具可以查看当前设备系统...原创 2016-11-07 17:30:18 · 9648 阅读 · 1 评论 -
svg矢量图绘制以及转换为Android可用的VectorDrawable资源
本文简单介绍了几款工具,目的能让新手快速的了解一下如何制作出自己需要的矢量图资源文件,在有需要做一张应用到Android应用/系统的矢量图时不至于措手不及。原创 2016-05-26 00:20:46 · 17705 阅读 · 4 评论 -
调试方法之打堆栈加重写控件
通常我们在看android系统源码的时候需要查看一些方法的调用方,这时候在Android Studio中按快捷键Ctrl+Alt+H就好了(如何将Android系统源码导入到AS中请看我的前置文章)。但是很多时候一个方法会被很多地方调用,而我们又无法确定我们需要追的流程走的是哪一条路线的时候就,打印堆栈就是一个很好的方法。原创 2015-05-10 22:30:22 · 819 阅读 · 0 评论 -
Android中的ContextMenu
Android 的ContextMenu,即上下文菜单。(类似电脑上的鼠标右键功能,选中某个元素,然后点右键,在弹出菜单上执行操作。)在手机上,通过长时间按住界面上的元素,就会出现事先设计好的上下文菜单。实现ContextMenu,一般要用到以下三个方法:(1)registerForContextMenu(getExpandableListView());//注册上下文菜单原创 2014-12-23 16:58:02 · 2675 阅读 · 0 评论 -
Android自定义TitleBar
系统自带的控件不足以满足我们的需求时,我们可以自定义控件。一般我们的程序中可能有很多个活动都需要自定义的标题栏,如果在每个活动中的布局中都编写一遍同样的标题栏代码,明显会导致代码的大量重复。这时候我们就可以引入布局的方式来解决这个问题。首先创建标题栏的布局文件title.xml,代码如下<LinearLayout xmlns:android="http://schemas.and原创 2014-12-23 16:57:04 · 2162 阅读 · 0 评论 -
Material Design中对Navigation Drawer的介绍 中文版
抽屉式导航抽屉式导航是Google应用程序中一种常见的模式。抽屉导航从左侧滑出,它遵循列表的关键设计线和标准。排版字体Roboto Medium, 14sp, #FFFFFFRoboto Regular, 14sp, #FFFFFF列表项: Roboto Medium, 14sp, 87% #000000副标题: Roboto Medium, 14sp, 54%翻译 2014-12-11 15:26:39 · 1411 阅读 · 0 评论 -
Notification 简单使用
Android Notification 简单使用,java代码如下:public class MainActivity extends Activity implements View.OnClickListener { NotificationManager notificationManager;//通知控制类 int Notification_ID = 0; @转载 2014-12-09 23:27:48 · 664 阅读 · 0 评论 -
AsyncTask 的使用
AsyncTask的定义:public abstract class AsyncTask<Params, Progress, Result> {AsyncTask是抽象类.AsyncTask定义了三种泛型类型 Params,Progress和Result。Params 启动任务执行的输入参数,比如HTTP请求的URL。Progress 后台任务执行的百分比。Result 后台执行任务最...原创 2014-12-09 23:26:01 · 707 阅读 · 0 评论 -
活动的启动模式
活动的启动方式一共有四种。分别是standard、singleTop、singleTask和singleInstance。首先Android是用返回栈来管理活动的,栈即先进后出。standardstandard是默认的启动模式,在不进行显式指定的情况下,所有活动都会自动使用这种启动模式。 从FirstActivity基础上启动从FirstActivity基础上启动,会在栈顶新建一个FirstAct...原创 2014-12-09 23:25:17 · 951 阅读 · 0 评论 -
Android app中调用启动其他应用(系统应用和第三方应用)2016.10.25新增android 6.0打电话api
一、打开第三方应用方法一Intent intent=new Intent(); //包名 包名+类名(全路径) intent.setClassName("com.linxcool", "com.linxcool.PlaneActivity"); startActivity(intent);方法二Intent intent = new Intent(); Co原创 2014-12-09 23:24:40 · 24880 阅读 · 1 评论 -
android.os.NetworkOnMainThreadException
2014-10-29 更新内容代码中有网络请求,程序执行的时候LogCat报错如下:android.os.NetworkOnMainThreadExceptionat android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork有趣的是我偶然发现当我按照LogCat给出的android.os.NetworkOnMainT原创 2014-12-09 23:22:33 · 1156 阅读 · 0 评论 -
android:layout_weight的真实含义
首先声明只有在Linearlayout中,该属性才有效。之所以android:layout_weight会引起争议,是因为在设置该属性的同时,设置android:layout_width为wrap_content和match_parent会造成两种截然相反的效果。如下所示:<LinearLayout android:layout_width="match_parent"转载 2014-12-09 23:21:01 · 676 阅读 · 0 评论 -
ArrayAdapter和SimpleAdapter简单使用
数据到视图的一般步骤:1.新建一个数据适配器2.适配器加载数据源3.视图ListView加载适配器1.ArrayAdapterpublic ArrayAdapter<String>(Context context, int resource, String[] objects)public ArrayAdapter (Context context, int resource, T...原创 2014-12-09 23:18:05 · 1038 阅读 · 0 评论