android
文章平均质量分 59
阿Q没精神
你若盛开,清风自来。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Flutter环境搭建
一、安装资料flutter官网flutter中文网可以去官网下载flutter,也可以通过git,下面俩个地址都可以git clone -b alpha https://github.com/flutter/flutter.gitgit clone https://github.com/flutter/flutter.git下载完二、配置环境变量1....原创 2019-06-19 09:40:14 · 341 阅读 · 0 评论 -
NDK环境搭建和JNI示例详解
一、概述 JNI是Java Native Interface的缩写,提供一些API实现了Java和C&C++语言的通信。以下示例开发用的工具是android stduio。二、NDK环境配置 1.配置gradle.properties文件android.useDeprecatedNdk=true2.下载NDK文件配置local.properties文件。如果NDK已经下载,直接配置使用就可以原创 2017-07-21 10:02:02 · 536 阅读 · 0 评论 -
android 自定义view实战之switchButton
SwitchButton 自定义开关效果图,颜色形状可自定义: 1.switchButton自定义代码public class SwitchButton extends CompoundButton { public static final float DEFAULT_BACK_MEASURE_RATIO = 1.8f; public static final int DEF原创 2016-09-29 15:56:38 · 2463 阅读 · 1 评论 -
如何用git将项目代码上传到github
注册账户以及创建仓库要想使用github第一步当然是注册github账号了。之后就可以创建仓库了(免费用户只能建公共仓库),Create a New Repository,填好名称后Create,之后会出现一些仓库的配置信息,这也是一个Git的简单教程。步骤如下: 打开https://github.com 直接在首页上注册点按钮注册成功之后,在页转载 2016-11-01 17:28:01 · 1144 阅读 · 0 评论 -
android View长按事件简单写法
android View长按事件简单写法原创 2016-09-20 15:32:02 · 5199 阅读 · 2 评论 -
Android自定义View的详解
转载请注明出处:http://blog.youkuaiyun.com/guolin_blog如果说要按类型来划分的话,自定义View的实现方式大概可以分为三种,自绘控件、组合控件、以及继承控件。那么下面我们就来依次学习一下,每种方式分别是如何自定义View的。一、自绘控件自绘控件的意思就是,这个View上所展现的内容全部都是我们自己绘制出来的。绘制的代码是写在onDraw()方法中的,转载 2016-09-29 10:54:22 · 1304 阅读 · 0 评论 -
Material design之MaterialDialog实例
1.Material design简介 卡片式风格,简约时尚的设计,Material design的核心思想,就是把物理世界的体验带进屏幕。去掉现实中的杂质和随机性,保留其最原始纯净的形态、空间关系、变化与过渡,配合虚拟世界的灵活特性,还原最贴近真实的体验,达到简洁与直观的效果。M2.示例 配置gradle compile ‘com.afollestad:material-dialogs:0.原创 2016-10-08 15:50:01 · 4069 阅读 · 0 评论 -
view 事件分发机制
View事件分发机制,其实就是我们对屏幕操作出发view那一刻开始,Touch事件分发中只有两个主角:ViewGroup和View。Activity的Touch事件事实上是调用它内部的ViewGroup的Touch事件,可以直接当成ViewGroup处理。 dispatchTouchEvent(),OnInterceptTouchEvent(),onTouchEvent()1.点击事件和触摸事件的原创 2016-10-31 16:42:19 · 1283 阅读 · 0 评论 -
android 自定义view之概述(一)
View相关的开发,在移动端占很大的比重。在开发自定义view过程中,要了解view的工作原理,View的事件处理,View的派生子类,view的属性以及自己所需的新增属性,view的绘制原理,以及响应用户消息和相关自定义回调函数 。一、View的结构Android系统的视图结构的设计采用了树模式,即View作为所有图形的基类,Viewgroup对View继承扩展为视图容器类。二、View和View原创 2017-04-05 11:52:49 · 1218 阅读 · 0 评论 -
android 自定义view之绘制(二)
自定义view的概括自定义view(一)中已经讲过,不清除的朋友可以去看看,接下来讲解自定义view主要实现方式中的一种,绘制view。连接地址: http://blog.youkuaiyun.com/haoaoo/article/details/69230440一、View绘制基本流程 1、了解绘制view的基本方法。 2、思考自己自定义Vie原创 2017-04-05 19:57:01 · 1375 阅读 · 2 评论 -
android 自定义view之组合(三)
在项目开发过程中,多处用到相同布局的控件,这时我们就可以选择组合控件,节约代码,还利于维护。一、概念 组合控件,把现有的控件根据自己的需求组合到一起形成一个新的控件。这些小的控件多是系统自带的控件。比如很多应用中普遍使用的标题栏控件,其实用的就是组合控件。二、示例 1.新建一个android项目,创建自定义view的布局文件group_view.xml<?xml version="原创 2017-04-06 11:21:19 · 1218 阅读 · 0 评论 -
Android studio 导入另外一个项目作为依赖包
把一个项目作为library导入到另外一个项目中: 1.启动AndroidStudio,打开你需要接收Library的项目。比如有两个项目,项目A,Library项目B,那么打开项目A。 2.在下拉菜单中依次找到New→Module→Import Gradle Project,点Next。选择你要导入的Library。 点击Module: 3.在打开的窗口中点击右侧的”…”浏览窗口,原创 2017-03-29 15:13:17 · 20294 阅读 · 1 评论 -
android 蓝牙Ble详解
转载:http://www.blogjava.net/zh-weir/archive/2013/12/09/407373.html 一、概念:Generic Attribute Profile (GATT) 通过BLE连接,读写属性类小数据的Profile通用规范。现在所有的BLE应用Profile都是基于GATT的。Attribute Protocol (ATT) GATT是基于ATT Pr原创 2016-11-02 16:23:02 · 1651 阅读 · 0 评论 -
Android 注解的应用
Java中的定义 注解是JDK5 之后的新特性,是一种特殊的注释,它为我们在代码中添加信息提供了一种形式上的方法,使我们可以在稍后某个时候非常方便的使用这些数据。 官方文档 An annotation is a form of metadata, that can be added to Java source code....原创 2018-08-31 18:59:22 · 410 阅读 · 0 评论 -
android 使用xutils3 https详解
随着17年ios上线必须要支持https,以及考虑到网络安全这块,越来越多的APP开发支持和使用https。在gradle里配置 compile 'org.xutils:xutils:3.2.2'编写NetWorkUtils.java文件public class NetWorkUtils { private static SSLContext mSSLContext = null;原创 2017-01-19 12:57:10 · 7733 阅读 · 9 评论 -
HttpClient与HttpURLConnection分析
1.HttpClient Android SDK中包含了HttpClient,在Android6.0版本直接删除了HttpClient类库,如果仍想使用则解决方法 是在android studio相应的module下的build.gradle中加入 android { useLibrary 'org.apache.http.legacy' }HttpClient的G原创 2017-04-21 16:21:00 · 1145 阅读 · 0 评论 -
android 网络框架之okhttp3
1.在android studio配置添加权限<uses-permission android:name="android.permission.INTERNET"/>gradle配置compile 'com.squareup.okhttp3:okhttp:3.2.0'compile 'com.squareup.okio:okio:1.7.0'2.异步get请求和post请求get请求priva原创 2017-05-17 16:33:40 · 482 阅读 · 0 评论 -
Android 内存管理
Android是一个基于Linux实现的操作系统。但对于Linux内核来说,Android也仅仅只是一个运行在内核之上的应用程序,与其他运行在内核之上的应用程序没有任何区别。所以Android需要一套机制管理运行在Linux进程中的APK应用程序。Android内存管理包含两部分,一部分是Framework对内存的管理,一部分是Linux内核对内存管理,这两部分共同决定应用程序的生命周期。本文主要原创 2018-01-15 15:13:20 · 412 阅读 · 0 评论 -
dalvik和Jvm的区别
一、Dalvik概要 在Android的体系框架中有一部分叫做Android Runtime,即Android运行时环境,Android Runtime环境包括了两个部分,第一部门是Android的核心类库,第二部分是Dalvik虚拟机。Dalvik虚拟机对内存具有高效的使用,以及在低速CPU上运行具有高性能。 依赖于底层Posix兼容的操作系统,它可以简单的完成进程隔离和线程管理。每一个And原创 2017-06-06 15:38:00 · 1150 阅读 · 0 评论 -
Activity任务栈和启动模式
任务栈android的任务栈Task,是一个栈结构用来放置Activity实例的容器。和数据结构栈一样,具有先进后出的特性。 1. 我们每次打开一个新的Activity或者退出当前Activity都会在一个称为任务栈的结构中添加或者减少一个Activity组件,因此一个任务栈包含了一个activity的集合, android系统可以通过Task有序地管理每个activity,并决定哪个Activ原创 2017-12-01 15:42:14 · 336 阅读 · 0 评论 -
Android性能优化之电量优化
1.电量优化 电量优化首先我们要想到怎么去优化,要优化就要分析什么功能以及那些操作最耗电。1.1 Battery Historian Google提供了一个开源的电池历史数据分析工具 – Battery Historian。喜欢的同学可以去学习。Google在Udacity上发布了Android性能优化的在线课程。1.1.1 安装 根据Battery Historian在github上的rea原创 2017-09-22 16:48:03 · 872 阅读 · 0 评论 -
android 自定义view之继承(四)
继承控件,顾名思义就是继承现有的控件来满足自己的需求与扩展。一般除了控件自身的属性外,我们会在onDraw()里进行扩展。1.继承TextView控件,定义属性。 public class TvView extends TextView { public TvView(Context context) { super(context); } public Tv原创 2017-04-06 15:39:51 · 1326 阅读 · 0 评论 -
enum构造方法解析
1.enum构造方法enum Structure{ One("testOne"),Two("testTwo"),Three("testThree"); private String value; private structure(String value){ this.value = value; } public String g原创 2017-06-21 17:24:47 · 1016 阅读 · 0 评论 -
AndroidStudio 编译C/C++文件生成SO文件
新建一个Project新建一个JniExample Project,包名为com.jni.example,创建完成后里面有个app Module创建native方法新建一个NativeUtils方法,增加native方法package com.jni.example;/** * Created by krubo on 2016/1/20. */public c转载 2017-03-08 10:42:39 · 1093 阅读 · 0 评论 -
android studio生成jar包
简要概述,配置gradle:1.在项目中如果存在重复的jar,在cradle文件dependencies的权限需要设置为provided。2.如果项目中使用了ndk,需要在dependencies里配置 compile fileTree(dir: “$buildDir/native-libs”, include: ‘native-libs.jar’),生成idk的jar包。(如果项目中没有使用idk原创 2016-09-22 17:01:45 · 1514 阅读 · 0 评论 -
android ViewPager实现无限轮播和设置监听事件
ViewPager的无限轮播,主要以实现为主。代码如下首先定义fragment_viewpager.xml: <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="v原创 2016-12-30 11:18:12 · 1745 阅读 · 0 评论 -
BroadcaseReceiver实现开机启动
1.在AndroidManifrst.xml中添加权限 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />2.在AndroidManifrst.xml中配置BroadcaseReceiver<receiver android:name=".BootBroadcastReceiver">原创 2016-12-08 11:00:54 · 1300 阅读 · 0 评论 -
android 保持后台推送简要分析
android和ios不同之处:ios有自己系统的apns通道,这apns通道其实就是极光后台推送到苹果服务器,苹果服务器来做推送,而安卓呢,有自己的GCM通道,但是被屏蔽了。所以现在衍生出很多第三方推送。第三方推送是客户端直接跟极光服务器通过长连接来做推送。android系统适配不同之处:4.4以上6.0以下机型:可以设置开机自动开启功能。代码可以控制 6.0以上机型:安装APP时可以设置自动开原创 2016-12-08 10:39:28 · 2757 阅读 · 0 评论 -
Android Studio下使用JNI
在Android Studio下使用ndk开发配置流程:先看看有没有.so文件,如果没有生成.so库文件创建libs文件夹(jniLibs文件夹也行),然后把.so库放进创建的文件夹下。然后在grade里配置.so存放目录sourceSets{ main(){ jniLibs.srcDirs = [‘libs’] } }然后在代码中调用该jni方法: //在原创 2016-09-26 11:00:05 · 1408 阅读 · 0 评论 -
android 数据库详解
在android中一般使用SQLite,SQLite是一种轻量级数据库,其有轻量级、独立性、跨平台、安全性特征,是一种实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 引擎不是一个独立的进程,可以按应用程序需求进行静态或动态连接。SQLite 直接访问其存储文件。SQLite俩种实现方式: 1.继承SQLiteOpenHelper public class SQ原创 2016-09-26 18:42:18 · 1576 阅读 · 0 评论 -
android 微信分享
最近开发用到了微信分享,写个博客梳理一下。申请APPID wxc5d8ca348955ced1导入jar包 libammsdk.jar代码示例 private IWXAPI api; //注册APP_ID api = WXAPIFactory.createWXAPI(this, APP_ID); api.registerApp(APP_ID);分享到朋友圈 flag:0好友,1原创 2016-12-01 17:14:12 · 1371 阅读 · 1 评论 -
android QQ好友分享
最近开发用到了QQ分享,写个博客梳理一下。申请APPID 1104979439导入jar包 mta-sdk-1.6.2.jar open_sdk_r5756.jar代码示例配置AndroidManifest.xml文件 <activity android:name="com.tencent.tauth.AuthActivity" an原创 2016-12-02 17:38:52 · 2415 阅读 · 0 评论 -
String、StringBuffer与StringBuilder详解
String、StringBuffer和StringBuilder都是处理字符串的。 优缺点分析: StringBuilder执行速度最快,其次是StringBuffer,最后是String。StringBuilder是非线程安全的。字符串变量。在单线程下做字符串缓冲区大数据处理可以使用StringBuilder。使用StringBuilder效率高于StringBuffer。StringBuf原创 2016-11-09 16:34:09 · 1083 阅读 · 0 评论 -
android studio之Lint代码质量控制提升
不同级别的工程师,编程水平不尽相同,导致开发出的 APP 在性能和实现效果上面差异很大。而起android开发还存在适配性的问题,Google 也考虑到这个问题,推出了一些常见的编程建议,并通过 lint 这个工具可以告诉我们代码中有哪些不合理的实现。Lint 是一款静态代码分析工具,能检查安卓项目的源文件,查找潜在的程序错误以及优化提升的方案。Lint在默认情况下是启动的。具体给我设置的原创 2017-04-07 16:29:50 · 1899 阅读 · 0 评论 -
Android Binder概述
什么是Binder? 为什么我们需要它?在提及Binder之前,我们先来看看Android的设计。在Linux系统里面,进程之间是相互隔离的,也就是说进程之间的各个数据是互相独立,互不影响,而如果一个进程崩溃了,也不会影响到另一个进程。这样的前提下将互相不影响的系统功能分拆到不同的进程里面去,有助于提升系统的稳定性,毕竟我们都不想自己的应用进程崩溃会导致整个手机系统的崩溃。而Android是基于Li原创 2017-03-22 16:00:26 · 964 阅读 · 0 评论 -
react-native-android-guide
react-native-android-guide 。 地址:https://github.com/jiangqqlmj/react-native-android-guidereact-native,解决了原生app,开发周期长,开发成本高,升级代价大的问题.或许你还在犹豫,一门新的语言让他再发展发展再学也不迟,但是在中国你懂的,学技术要从技术还是娃娃的时候学起。转载 2016-04-14 14:12:57 · 1152 阅读 · 0 评论 -
Android 以流的方式读取服务器图片文件
public void getCodeImage(final String path) { new Thread() { public void run() { try { HttpURLConnection conn = (HttpURLConnection) new URL(p原创 2016-11-07 14:45:32 · 2072 阅读 · 0 评论 -
Android自定义相机,带边框截图
参考:http://blog.youkuaiyun.com/yanzi1225627/article/details/7934710项目需求:要实现自定义拍照界面,并且只取框框中的内容。问题点:1、通过Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE)方式自动对焦,没有实现触摸对焦 2、myParameters.setPreviewSize转载 2016-11-15 11:18:11 · 3746 阅读 · 4 评论 -
android开发必备官方链接
1、谷歌安卓开发者页面这里是主站点,在这您可以找到一切资源帮助您开始安卓开发。此站包含了很多关于学习基础知识的资源,完整的API引用,以及你开始开发所需的各种工具。此站共分为五个部分:作为初学者,你应该从工具开始,这部分讲解了如何安装安卓SDK。教程为你提供了关于安卓的基本介绍,教给你如何写出你的第一个程序。它包括很多的资源,即便成为高级程序员你仍需阅读这里面的文章。API指南是对于不同API更技术原创 2017-04-10 17:22:28 · 1129 阅读 · 0 评论 -
Android 7.0 走进牛轧糖
谷歌正式在I/O大会现场详细介绍了有关Android 7.0(牛轧糖)的大量信息。目前,我们已经知道,新一代Android操作系统将支持无缝升级,能够通过Vulkan API来在中低硬件配置设备上实现游戏流畅体验以及更多的Emoji表情。其实,Android 7.0最大也是最引人关注的还是来自运行效率上的改进。 目前,谷歌已经放出了Android 7.0的第三个预览版系统,正式版则要等原创 2017-04-11 16:42:23 · 1270 阅读 · 0 评论
分享