• 等级
  • 314474 访问
  • 56 原创
  • 0 转发
  • 16503 排名
  • 277 评论
  • 198 获赞

Kotlin 一种以服务为基础的APP架构及源码示例

前言由于工作原因,可能会被调到隔壁组。此架构为隔壁组leader设计,并不是我原创,已取得leader同意,此博文只分享我对此架构的理解。特此声明。最近看了下Kotlin的一些语法,外加隔壁组采用非常规MVC/MVP/MVVM开发,所以写此Demo,一是为了练习Kotlin语法,二是为了尝试使用隔壁组架构进行开发。由于为了练习Kotlin语法,所以在代码的具体实现上,可能会有些“炫...

2018-05-07 10:57:35

Android 【插件化】"偷梁换柱"的高手-VirtualApk源码解析

本文已授权微信公众号《非著名程序员》原创首发,转载请务必注明出处。关于VirtualApk工程介绍初始化:PluginManager.getInstance(base).init()hookInstrumentationandHhookIActivityManager(AMS)加载插件:PluginManager.getInstance(base)...

2018-04-12 14:28:30

Java 注解及注解处理器概述

元注解@Documented注解是否将包含在JavaDoc中@Inherited被注解类的子类是否会注解@Retention注解保留位置@Target注解的范围@Retention注解value属性的取值范围为枚举类RetentionPolicy的三个枚举值,SOURCE、CLASS和RUNTIME。分别对应注解的保留位置为.java源码、.class代码和字节码。S

2018-01-18 17:36:05

Java 并发基础学习

本文已授权微信公众号《鸿洋》原创首发,转载请务必注明出处。三个基础概念原子性。一个操作或者一系列骚操作,要么全部执行要么全部不执行。数据库中的“事物”就是个典型的院子操作。可见性。当一个线程修改了共享属性的值,其它线程能立刻看到共享属性值的更改。举个例子:由于JMM(JavaMemoryModel)分为主存和工作内存,共享属性的修改过程为从主存中读取并复制到工作内存中,...

2018-01-09 14:28:19

Andorid 换肤框架AndSkin源码解析及优缺点

AndSkin简介及使用教程AndSkingaybug:https://github.com/RrtoyewxXu/andSkinAndSkin作者写的说明:http://blog.csdn.net/zhi184816/article/details/53436761AndSkin源码解析初始化BaseSkinApplication解析BaseSkinApplication中其实就一行初始化

2017-10-19 15:50:00

Android 顶级视图DecorView的前世今生

在Activity的启动过程中会执行ActivityThread#performLaunchActivity方法,其中调用Activity#attach。在attach()方法中实例化Activity持有的mWindow属性为Window的唯一实现类PhoneWindow。

2017-04-27 15:06:07

Android xUtils3源码解析之数据库模块

本文已授权微信公众号《非著名程序员》原创首发,转载请务必注明出处。xUtil3支持数据库多库的配置,使用不同的DaoConfig,可以创建多个.db文件,每个.db文件彼此独立。由于xUtils3设计的是在需要使用数据库的时候,才创建数据表。所以下文以save操作为例,跟进初始化数据表的过程。示例代码:

2017-04-01 15:10:32

Android xUtils3源码解析之注解模块

本文已授权微信公众号《非著名程序员》原创首发,转载请务必注明出处。真正的初始化是在这里。实际上这里称作“初始化”有些不太合适,因为xUtils3中View注解都是`@Retention(RetentionPolicy.RUNTIME)`类型的,运行时才是真正的初始化,

2017-04-01 15:09:16

Android xUtils3源码解析之图片模块

本文已授权微信公众号《非著名程序员》原创首发,转载请务必注明出处。xUtils3源码解析之图片模块,图片加载所需要的一切,都在这里~

2017-03-30 09:43:54

Android xUtils3源码解析之网络模块

本文已授权微信公众号《非著名程序员》原创首发,转载请务必注明出处。xUtils3四大模块:网络请求、图片加载、ORM框架和事件注解。本文阅读分析网络请求相关代码。使用版本:`compile'org.xutils:xutils:3.3.36'`

2017-03-28 09:17:57

Android 从源码的角度带你完全解析AsyncTask

AsyncTask()解析publicAsyncTask(){mWorker=newWorkerRunnable<Params,Result>(){publicResultcall()throwsException{mTaskInvoked.set(true);

2017-01-19 10:53:04

Android QA专用,Python实现不一样的多渠道打包工具

相对于美团打包方案,我为什么要写这个工具?除了Gradle的多渠道打包,目前最流行的应该是美团(美团Android自动化之旅—生成渠道包、美团Android自动化之旅—适配渠道包、Walle)使用Python直接添加渠道文件的打包方式了,速度真是杠杠的!但是,这里有一个问题:需要一个已签名无渠道号的APK,那么问题来了,这个APK哪里来的?懂行的朋友该说了,Gradle随便打个Release包不完事

2017-01-17 10:50:09

Android package属性、package name和Application ID三者的联系及区别

名词解释package属性:在AndroidManifest.xml文件中。packagename:应用程序的包名。ApplicationID:模块defaultConfig块下的applicationId属性。设置ApplicationID每个Android应用程序都有唯一一个类似Java包名的ApplicationID,比如com.example.myapp。在Android设备

2016-12-27 15:51:43

Python 模拟登录某SDN并解析返回数据

流程**三步**走:1.打开登录页,获取`cookie`和验证信息(正则匹配的`lt`、`execution`和`_eventId`)。2.模拟点击登录按钮,这一步需要构造登录表单完整数据,而且要加上`User-Agent`。3.验证通过之后,就可以打开各种页面了~

2016-12-20 10:01:37

Android JNI之Java和C互相调用

概述JNI是什么JNI是JavaNativeInterface的缩写,它提供了若干的API实现了Java和其他语言的通信(主要是C&C++)。从Java1.1开始,JNI标准成为java平台的一部分,它允许Java代码和其他语言写的代码进行交互。NDK是什么NDK是NativeDevelopmentKit的缩写。是SDK(softwaredevelopmentkit)软件开发工具包的一部

2016-11-15 14:56:22

Android 使用WindowManager实现悬浮窗及源码解析

本文已授权微信公众号《鸿洋》原创首发,转载请务必注明出处。一个Activity、一个Service和两个布局文件。布局十分简单,这里就不贴了,大概描述下。activity_main.xml中俩按钮,layout_window.xml中一个TextView。ok,首先看下MainActivity。MainActivity中只有俩按钮,点击启动WindowService,点击停止WindowService。

2016-10-24 09:18:08

Android Activity启动流程源码解析

在AndroidLauncher启动应用程序流程源码解析一文中从点击应用程序图标startActivity()开始,一直讲解到Application和MainActivity的onCreate()方法被调用。中间流程有些高能,高能部分是两篇博文共有的地方,没办法绕开。本文主要讲述从Activity#onCreate()到Activity#onResume()的流程。想追本溯源的同学建议先阅读

2016-10-14 15:20:21

Android 手把手带你玩转自定义相机

本文已授权微信公众号《鸿洋》原创首发,转载请务必注明出处。概述相机几乎是每个APP都要用到的功能,万一老板让你定制相机方不方?反正我是有点方。关于相机的两天奋斗总结免费送给你。

2016-10-12 11:21:58

Android APP必备高级功能,消息推送之MQTT

本文已授权微信公众号《鸿洋》原创首发,转载请务必注明出处。1.Android端实现消息推送的几种方式轮询:客户端定时向服务器请求数据。伪推送。缺点:费电,费流量。拦截短信消息。服务器需要向客户端发通知时,发送一条短信,客户端收到特定短信之后,先获取信息,然后拦截短信。伪推送。缺点:贵而且短信可能被安全软件拦截。持久连接(Push)方式:客户端和服务器之间建立长久连接。真正的推送。

2016-10-10 09:15:24

Android 高级自定义Toast及源码解析

本文已授权微信公众号《非著名程序员》原创首发,转载请务必注明出处。Toast概述Toast的作用不需要和用户交互的提示框。更多参见官网:https://developer.android.com/guide/topics/ui/notifiers/toasts.htmlToast的简单使用

2016-10-08 09:27:41

博客专家

一口仨馍

拥抱改变,勇往直前。
关注
  • 计算机软件/半吊子程序员
  • 中国 浙江省 杭州市
奖章
  • 专栏达人