最近遇到这样一个需求:要做一个仿微信朋友圈的功能,要求上传最多九张图到七牛。七牛有上传图片的接口,但是每次只能上传一张。如果是九张图片一齐上传,使用for循环的话肯定不行的,很容易出错。因为上传七牛的动作是在子线程完成的…
分类:Android
基于apt实现的Android快速持久化框架:AptPreferences
AptPreferences是基于面向对象设计的快速持久化框架,目的是为了简化SharePreferences的使用,减少代码的编写。可以非常快速地保存基本类型和对象。AptPreferences是基于APT技术实现,在…
Android进阶——多线程系列之Semaphore、CyclicBarrier、CountDownLatch
前言 今天向大家介绍的是多线程开发中的一些辅助类,他们的作用无非就是帮助我们让多个线程按照我们想要的执行顺序来执行。如果我们按照文字来理解Semaphore、CyclicBarrier、CountDownLatch可能会…
FastHook——实现.dynsym段和.symtab段符号查询
一、概述 通过dlopen、dlsym获取共享库函数地址、全局变量是一种经常使用到的编程技巧,尤其是在Hook框架中。然而无论是dlsym还是一些常用框架(如Nougat_dlfunctions ),都只能搜索.dyns…
Android逆向之旅—Hook神器家族的Frida工具使用详解
一、环境安装配置 因为网上的确有介绍了,而且官网也有文档说明:https://www.frida.re/docs/javascript-api,但是最重要的是片段化就是东一处西一处,没有归纳性的总结,而且很多常用的功能都…
安卓程序添加指纹解锁功能
前言 指纹解锁技术成为当前验证用户信息的重要手段,基本上当前手机都配置了指纹解锁。当开发的APP需要加密验证时可以考虑添加系统指纹解锁功能。 添加指纹解锁功能步骤很简单,大致过程如下: 1 添加权限 在Manifest.…
Android/Java线程池总结
线程池的优点: 重用线程,减少线程创建和销毁的性能开销。 管理线程,并提供定时执行以及指定间隔循环执行等功能。 Android中的线程来源于Java中的Executor,实现类是ThreadPoolExecutor,Th…
AS报错:finished with non-zero exit value 1
Android studio 使用常见问题解决思路: 问题一: Error: Execution failed for task ':app:processDebugResources'. > com.androi…
WebView 性能和用户体验优化
回顾系统 WebView 进化史 从Android4.4系统开始,Chromium内核取代了Webkit内核。 从Android5.0系统开始,WebView移植成了一个独立的apk,可以不依赖系统而独立存在和更新。 从…
第5章 Kotlin语言基础 《Kotin 编程思想·实战》
第5章 Kotlin语言基础 5.1 基础语法 5.1.1 包(package): package打包与import导包 5.1.2 变量 5.1.3 表达式 5.1.4 代码块 5.1.5 分支控制流 5.1.6 循环…
TakePhoto-轻量级Android照片处理框架
TakePhotoV2.0已发布,详见《TakePhoto-轻量级Android照片处理框架V2.0发布》 TakePhoto 简介 支持以拍照的方式获取照片 支持从相册选择照片 支持对照片进行裁切 支持对照片进行压缩 …
android项目框架大集合
自己整理的代码快速开发框架 代码见github FrameDemo android项目框架 1.实体生成 Gson、FastJson 注: 在Android Studio中可采用GsonFomat插件快速生成Model …