Android内存优化(三)避免可控的内存泄漏
相关文章 Android性能优化系列 Java虚拟机系列 前言 内存泄漏向来都是内存优化的重点,它如同幽灵一般存于我们的应用当中,有时它不会现身,但一旦现身就会让你头疼不已。因此,如何避免、发现和解决内存泄漏就变得尤为重要。这一篇我们先来学习如何避免内存泄漏。 1.什么是内存泄漏...
View Articleswift3.1 快速上手系列(三)
swift 3.x 还在学习中,swift 4 的脚步就已到来。生活就是这样,必须保持不断学习的劲头,才能在这年轻的战场上脱颖而出。但要说明的是,swift 各种版本的更新与迭代,都是向着更简洁、更方便、更强大发展,让 IOS 开发更优雅。 1. 遍历构造函数 convenience 默认情况下,所有的构造方法都是指定构造函数 Designated,使用 convenience...
View Article【stm32f407】I2C实验
一.I2C介绍 IIC(Inter-IntegratedCircuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。它是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC与IC之间进行双向传送,高速IIC总线一般可达400kbps以上。如图: I2C协议一共有6种协议信号 ① 空闲状态 ②...
View Article带你解锁蓝牙skill(三)
本文授权微信公众号fanfan程序媛独家发布 转载请注明出处,本文出自fanfan的带你解锁蓝牙skill系列 蓝牙这块儿算是系统中的一个大块儿,刚开始分析确实很容易没有头绪,所以在进入庞大的源码之前先确定一个分析顺序,也好避免越学越乱。 对于源码的分析不外乎whw(what—how—why) 对于蓝牙各协议的功能以及如何演示都已经分析完了,具体可以参考...
View ArticleReactNative开发——封装原生UI组件
ReactNative开发——封装原生UI组件 下文我们将制作一个可以用来显示图片的原生UI组件,这个UI组件可以随着手势放大缩小。(封装PhotoView) PhotoView的开源地址:https://github.com/chrisbanes/PhotoView 一、引入开源库 可以PhotoView开源库作者的引用提示: 1、在 android项目根目录中的...
View Article【stm32f407】SPI实验 驱动W25Q128
一.SPI介绍 SPI 是英语SerialPeripheral interface的缩写,顾名思义就是串行外围设备接口。是Motorola首先在其MC68HCXX系列处理器上定义的。SPI接口主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的...
View ArticleFlutter实战一Flutter聊天应用(十一)
我们的应用程序现在可以点击查看图像,但还没有实现查看时放大、缩小与移动图像。要实现这个功能,需要监听用户在图像上的操作,并调用相应的回调处理用户操作。我们先将Transform控件从_ImageZoomableState的build方法中拆分出来。在_ImageZoomableState类中添加_drawImage方法。 class _ImageZoomableState extends...
View Article微信小程序开发(七)小程序支付-查询订单
应用场景 该接口提供所有微信支付订单的查询,商户可以通过查询订单接口主动查询订单状态,完成下一步的业务逻辑。 需要调用查询接口的情况: ◆ 当商户后台、网络、服务器等出现异常,商户系统最终未接收到支付通知; ◆ 调用支付接口后,返回系统错误或未知交易状态情况; ◆ 调用被扫支付API,返回USERPAYING的状态; ◆ 调用关单或撤销接口API之前,需确认支付状态; 接口说明...
View ArticleKotlin入门(1)搭建Kotlin开发环境
Kotlin做为一门编程语言,已经出现好几年了,但此前在国内并不闻名。自从5月份谷歌宣布它成为Android的官方开发语言之后,Kotlin猛然窜红了,虽说短期内Kotlin无法取代Java,但对于一门新技术,我们还是有必要好好学习。谷歌号称从Android Studio 3.0开始完全支持Kotlin,可是Android Studio目前的稳定版还是2.3,所以本文仍然以Android...
View Article微信小程序开发(八)小程序支付-关闭订单
如果你已经看了前面的《微信小程序开发(五)小程序支付-统一下单》和《微信小程序开发(七)小程序支付-查询订单》。这个关闭订单就更加不是问题了。 应用场景 以下情况需要调用关单接口:商户订单支付失败需要生成新单号重新发起支付,要对原订单号调用关单,避免重复支付;系统下单后,用户支付超时,系统退出不再受理,避免用户继续,请调用关单接口。 注意:订单生成后不能马上调用关单接口,最短调用时间间隔为5分钟。...
View Article微信小程序开发(九)小程序支付-申请退款
之前公司做的app的订单退款是,客户打电话给公司客服退款。这个一旦用订单量大了就是一件很要命的事情,工作量大,效率低且用户体验不好。 题外话...
View Article微信小程序开发(十)小程序支付-查询退款
应用场景 提交退款申请后,通过调用该接口查询退款状态。退款有一定延时,用零钱支付的退款20分钟内到账,银行卡支付的退款3个工作日后重新查询退款状态。 接口说明 这里退款还是根据商户订单号-out_trade_no去微信那边查询 代码实现 /* * 根据商户订单号out_trade_no 查询退款 */ router.all('/api/wxpay/refundQuery',...
View ArticleKotlin Reference (八) 可见性修饰符, data class,object Claz
KotLin 相关文档 官方在线Reference kotlin-docs.pdf Kotlin for android Developers 中文翻译 Kotlin开发工具集成,相关平台支持指南 Kotlin开源项目与Libraries Kotlin开源项目、资源、书籍及课程搜索平台 Google’s sample projects written in Kotlin Kotlin and...
View Article013--swift计算型属性和懒加载的区别
计算型属性和懒加载的区别 作者:liyunxiangrxm 发表于2017/6/21 22:35:17 原文链接 阅读:13 评论:0 查看评论
View Article014--利用模型的didSet属性给UI赋值
**注:其实就是相当于在一个View中实现其中的一个属性的set方法,该属性通过set方法将值传进来,然后我们获取到该值,将该值得内容付给View.** 上Swift代码: 首先建立模型: // // Person.swift // Swift设置模型数据 // import UIKit class Person: NSObject { var name:String? } 然后建立一个label...
View Article015--Swift反射机制
目的: 1.知道Swift中有命名空间 -在同一个命名空间下,全局共享! -第三方框架使用Swift如果直接拖拽到项目中,从属于同一个命名空间,很有可能冲突! -以后尽量都要用cocoapod 2.重点知道Swift中的NSClassFromString(反射机制)的写法 -反射最重要的目的,就是为了解耦 OC反射机制 NSClassFromString isMemberOfClass...
View ArticleDoTween 控制UGUI tween动画
NGUI有自带的tween动画,但是UGUI却没有,如果需要UGUI实现tween动画效果,需要使用插件DoTween. 下载地址:http://download.csdn.net/detail/u011484013/9877427 DoTween使用之前,需要添加引用 using DG.Tweening; 使用方式: 首先获取对象的RectTransform实例rectTransform...
View ArticleLeakCanary源码探讨- 如何检测 Activity 是否泄漏
Tamic/http://blog.csdn.net/sk719887916/article/details/73571846 OOM 是 Android 开发中常见的问题,而内存泄漏往往是罪魁祸首。 为了简单方便的检测内存泄漏,Square 开源了 LeakCanary,它可以实时监测 Activity 是否发生了泄漏,一旦发现就会自动弹出提示及相关的泄漏信息供分析。 本文的目的是试图通过分析...
View Article如何加快Gradle的构建速度
Google I/O 2017已经过去几周了,相信大家都参与了这次会议的许多专场。 本届I/O的一个具有实际意义的话题是How to speed up your slow Gradle builds。在该专场会议上,Android Studio的工具团队向大家推荐了10条非常有用的建议用来加快gradle的构建速度。 个人决定把这些建议整理成一个方便使用的列表,分享如下:...
View Article