- 博客(43)
- 资源 (1)
- 收藏
- 关注
原创 安卓BLE开发介绍
跟经典蓝牙(BR/EDR)对比,BLE可以实现功更低耗、但带宽更小;例如未建立连接时,BLE 会处于睡眠模式。蓝牙芯片分单模和双模,其中双模是指同时支持BR/EDR和BLE(一般是共享一个天线、芯片在运行时切换模式)。安卓设备上,蓝牙是作为标配功能(OS 4.3及以上是双模芯片),因此潜在用户市场很大。
2022-11-03 09:56:56
1381
1
原创 小程序-蓝牙API Mock文档
为了让开发者更方便地开发小程序,开发者工具提供了 API Mock 的能力,可以模拟部分 API 的调用结果。Mock 的入口在工具调试面板顶部的 Tab,点 + 新建规则。(超过此版本,Mock不生效)小程序调试基础库要设置为。
2022-10-31 17:18:04
515
原创 AlarmManager-闹钟服务
AlarmManager-闹钟服务AlarmManager简介在特定的时刻为我们广播一个指定的Intent,简单来说就是我们自己定一个时间,然后到时间时, AlarmManager会为我们广播一个我们设定好的Intent,比如指向某个Activity或者Service。获得AlarmManager实例AlarmManager alarmManager = (AlarmManager) contex
2017-10-21 11:46:47
479
原创 Java中日期与时间相关类用法解析
Java中日期与时间相关类用法解析Date类Date类主要用来获取当前的日期与时间//当前的日期和时间Date date = new Date();//从1970年1月1日算起过了6000秒的日期和时间Date date2 = new Date(60000);//获取当前的时间戳(自 1970 年 1 月 1 日 00:00:00 GMT 以来的毫秒数)long currentTimeMi
2017-10-21 11:45:34
531
原创 Android App 开发技能图谱
Android App 开发技能图谱操作系统Windows/MacOSX/Linux编程语言JavaHTML/JS (Hybrid/Web App)C/C++ (NDK)SQL (DB)Kotlin开发工具IDEAndroid StudioEclipse调试工具网络调试CharlesWiresharkFiddlertcpdumpPaw/Postman内存分析monit
2017-08-14 15:13:28
1097
转载 Git 分支管理最佳实践
Git 是目前最流行的源代码管理工具。大量的软件项目由 GitHub、Bitbucket 和 GitLab 这样的云服务平台或是私有的 Git 仓库来管理。在使用 Git 时通常会遇到的一个问题是采用何种分支管理实践,即如何管理仓库中作用不同的各类分支。和软件开发中的其他实践一样,Git 分支管理并没有普遍适用的最佳做法,而只有对每个团队和项目而言最适合的做法。简单来说,在项目开发中使用多个分支会
2017-08-03 19:25:33
408
转载 在大公司工作3年以上的人,如何摆脱螺丝钉的现实?
在大公司工作时间长了,有人慢慢觉得自己就像螺丝钉,饿也饿不死,总感觉在慢慢废弃。因为在大公司,一切都需要协作,所以分工会越来越细,每个人都干一小块领域,这种运作模式对于公司的价值是最大化的,因为理论上每个人聚焦自己最擅长的地方,这样能够发挥的价值是最大的。大公司是目标驱动,小公司是单兵作战,目标驱动就是会很多人来做这么一件事情。不同的人负责不同领域,每个人通过自己的能力和经验,将自己所负责的岗位实现
2017-06-14 10:21:03
2070
转载 Android卡顿检测方案
应用的流畅度最直接的影响了App的用户体验,轻微的卡顿有时导致用户的界面操作需要等待一两秒钟才能生效,严重的卡顿则导致系统直接弹出ANR的提示窗口,让用户选择要继续等待还是关闭应用。 所以,如果想要提升用户体验,就需要尽量避免卡顿的产生,否则用户经历几次类似场景之后,只会动动手指卸载应用,再顺手到应用商店给个差评。关于卡顿的分析方案,已经有以下两种:分析trace文件。通过分析系统的/dat
2017-06-05 11:24:27
393
原创 MAT使用
MAT使用下载:http://eclipse.org/mat/downloads.phpMAT工具全称为Memory Analyzer Tool,一款详细分析Java堆内存的工具,该工具非常强大,为了使用该工具,我们需要hprof文件。但是该文件不能直接被MAT使用,需要进行一步转化,可以使用hprof-conv命令来转化,但是Android Studio可以直接转化,转化方法如下:1.选择一个hp
2017-05-25 16:45:05
380
原创 TraceView工具(Device Monitor)介绍
TraceView工具能做什么?从代码层面分析性能问题,针对每个方法来分析,比如当我们发现我们的应用出现卡顿的时候,我们可以来分析出现卡顿时在方法的调用上有没有很耗时的操作,关注以下两个问题:调用次数不多,但是每一次执行都很耗时方法耗时不大,但是调用次数太多简单一点来说就是我们能找到频繁被调用的方法,也能找到执行非常耗时的方法,前者可能会造成Cpu频繁调用,手机发烫的问题,后者就是卡顿的问题。
2017-05-17 14:38:54
494
原创 Android蓝牙开发的各种坑
一、对蓝牙设备的操作不能并行,只能串行,即每次都要在收到上一个操作的回调后才能继续下一个操作。但是断开连接例外,断开连接要马上closeGatt,不用等任务队列中的其他操作了。而且要给所有正在执行或者准备执行的任务都cancel。二、有时候蓝牙协议栈出现异常可能收不到回调,所以我们要对每个操作做超时检查,否则后面的所有操作都被阻塞了。三、对于超时的任务,最好closeGatt,下次重新连接的时候重开
2017-04-06 21:21:59
13740
7
原创 Android布局优化
安卓布局优化 在进行Android应用的界面编写时,如果创建的布局层次结构比较复杂,View树嵌套的层次比较深,那么将会使得界面展现的时间比较长,导致应用运行起来越来越慢。Android布局的优化是实现应用响应灵敏的基础。遵循一些通用的编码准则有利于实现这个目标。include 标签共享布局 在使用XML文件编写Android应用的界面时,经常会遇到在不同的页面中需要实现相同的布局
2017-03-30 17:19:55
463
原创 布局优化
布局优化 在进行Android应用的界面编写时,如果创建的布局层次结构比较复杂,View树嵌套的层次比较深,那么将会使得界面展现的时间比较长,导致应用运行起来越来越慢。Android布局的优化是实现应用响应灵敏的基础。遵循一些通用的编码准则有利于实现这个目标。include 标签共享布局 在使用XML文件编写Android应用的界面时,经常会遇到在不同的页面中需要实现相同的布局,这
2017-03-04 16:59:02
466
原创 在Mac上搭建React Native开发环境(iOS && Android)
一、配置iOS开发环境①基本环境需求1.先安装Homebrew:用于安装NodeJS和其他工具必须的$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 如上图,出现“Press RETURN to continue or any other key
2016-05-16 11:48:08
10481
转载 iOS开源库和完整应用
youtube下载神器:https://github.com/rg3/youtube-dl我擦咧vim插件:https://github.com/Valloric/YouCompleteMevim插件配置:https://github.com/spf13/spf13-vim----------------Mac完整项目----------电台:https://githu
2015-10-08 17:35:18
1533
转载 iOS 9: UIStackView入门
同iOS以往每个迭代一样,iOS 9带来了很多新特性。UIKit框架每个版本都在改变,而在iOS 9比较特别的是UIStackView,它将从根本上改变开发者在iOS上创建用户界面的方式。本文将带你学习怎样使用UIStackView创建用户界面。本文假定你已经熟悉Auto Layout基础。不熟悉的可以先看看Auto Layout教程。要理解Stack View为何如此有用
2015-10-08 17:33:12
377
转载 升级Xcode7后所要更改的配置
此文转载自:http://www.tekuba.net/program/364/,文章内容竟然不让复制,好辛苦. iOS9 一发布便升级,隔天调试程序时已经不能使用Xcode 6.4,果断升级,升级之后先报了一个错,bitcode,以为要升级所用sdk,但是还是2个月前的版本,搜到这篇文章,给需要的小伙伴们, 之所以不喜欢用转载,万一有天原博主删除文章,我便也找不到原文,还请谅解;正文如下
2015-09-24 14:37:27
818
原创 iOS中UIMenuController的使用
不知你有没有发现,在你的微信朋友中,长按一段文字(正文或者评论),会弹出这样子的玩意: 这玩意很眼熟是吧?没错,你经常见到它,在很多iOS系统应用中,你想复制一段文字到另一处粘贴,你只要长按一下,这玩意就出来了。既然iOS自家的app中都有这个,那么它一定有封装的控件吧,以前我不知道他到底叫什么,后来公司的项目中要用到这玩意了,当时打算自己实现,还叫设计MM切了图,囧,但是在百度上
2015-03-25 14:57:10
969
原创 学会使用Block编程
1.Block是什么?Block是一个C级别的语法以及运行时的一个特性,和标准C中的函数(函数指针)类似,可以看成一个语句块或者更多时候看成一个匿名函数。
2015-02-27 12:01:09
1603
原创 Xcode Debug之添加断点
1.添加全局断点(Add Exception Breakpoint)通过添加全局断点,可以快速定位导致程序奔溃所在的代码行。 在Xcode 中找到Breakpoint navigator(也可以通过快捷键command + 7跳转),在最下面点击加号,第一个就是:
2015-02-26 14:46:56
2068
转载 最新版SDWebImage的使用
我之前写过一篇博客,介绍缓存处理的三种方式,其中最难,最麻烦,最占内存资源的还是图片缓存,最近做的项目有大量的图片处理,还是采用了SDWebImage来处理,但是发现之前封装好的代码报错了。研究发现,是我用了新版的SDWebImage,好多方法都变了。现在把代码贴出来,供大家参考。尤其是新手,看完这篇博客,图片缓存so easy。最后有demo供大家下载,先学习。第一步,下载SDW
2014-12-12 15:33:18
800
原创 使用Auto Layout中的VFL(Visual format language)--Swift实现
class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() var aView = UIView() aView.backgroundColor = UIColor.redColor()
2014-12-10 15:04:17
2484
转载 使用Auto Layout中的VFL(Visual format language)--代码实现自动布局
本文将通过简单的UI来说明如何用VFL来实现自动布局。在自动布局的时候避免不了使用代码来加以优化以及根据内容来实现不同的UI。一:API介绍NSLayoutConstraint API1234NSLayoutConstraint+ (NSArray *)constraintsWithVi
2014-12-09 14:21:01
608
原创 json是什么?
JSON是一种取代XML的数据结构,和xml相比,它更小巧但描述能力却不差,由于它的小巧所以网络传输数据将减少更多流量从而加快速度,那么,JSON到底是什么?JSON就是一串字符串 只不过元素会使用特定的符号标注。{} 双括号表示对象[] 中括号表示数组"" 双引号内是属性或值: 冒号表示后者是前者的值(这个值可以是字符串、数字、也可以是另一个数组或对象)所以 {"na
2014-11-27 11:41:29
640
转载 理解NSAttributedString
n NSAttributedString object manages character strings and associated sets of attributes (for example, font and kerning) that apply to individual characters or ranges of characters in the string.这句
2014-11-03 16:01:33
615
转载 iOS7滑动返回
iOS 7中在传统的左上角返回键之外,提供了右滑返回上一级界面的手势。支持此手势的是UINavigationController中新增的属性interactivePopGestureRecognizer,即右滑返回只支持以UINavigationController为容器的ViewController间切换,要想在自定义容器中使用,需要一些额外的工作。基本地,控制ViewContr
2014-10-15 17:17:55
466
转载 xcode6中如何对scrollview进行自动布局(autolayout)
Xcode6中极大的增强了IB中自动布局的能力,下面就通过对刺儿头scrollview进行一次自动布局实战,看看自动布局在Xcode6中到底值不值得使用:说UIScrollView是个刺儿头,实在没有夸张,这是由于scrollview本身contentSize、contentInsets等复杂的特性导致,苹果文档在讲autolayout的时候甚至专门拿出一节讲如何对scrollview进行
2014-09-30 12:45:30
613
原创 iOS 开发常用宏定义
#define SharedAppDelegate ((AppDelegate *)[UIApplication sharedApplication].delegate)#define StandardUserDefaults [NSUserDefaults standardUserDefaults]//过期#define DEPRECATED(_version) __attribute_
2014-08-31 20:43:21
665
原创 iOS 使用使用Swizzling 全局修改Navigation的返回按钮
使用类别,覆盖UIBarButtonItem的+(void)load方法
2014-08-28 22:54:11
830
原创 iOS MD5字符串加密
@interface MyMD5 : NSObject {}+(NSString *) md5: (NSString *) inPutText ;@end
2014-08-26 08:49:31
685
转载 [调试相关]预编译文件中宏定义打印日志
#ifdef DEBUG #define debugLog(...) NSLog(__VA_ARGS__) #define debugMethod() NSLog(@"%s", __func__) #else #define debugLog(...) #define debugMethod() #endif 工程有Debug Ver
2014-08-19 14:21:37
1195
转载 判断设备是否为iPhone5的方法
1.在程序中涉及到全屏的宽高的时候,初始化的时候,代码中不要写320和480#define Screen_height [[UIScreen mainScreen] bounds].size.height#define Screen_width [[UIScreen mainScreen] bounds].size.width 2.使用宏定义方法判断
2014-08-01 17:55:35
503
转载 iOS设备是否越狱的判断方法
苹果是非常看重产品的安全性的,所以给用户设计了一套复杂的安全机制。这让喜爱自由,崇尚一切开放的程序员们极度不爽,于是越狱就成了苹果和黑客们反复斗法的场所。总体来说,越狱可以让我们随意安装、共享应用,但确实也降低了设备的安全性,会给一些恶意应用提供方便之门。 有时我们的应用希望知道安装的设备是否已经越狱了,显然,苹果官方不会给出解决方案来的,那么我们怎么办呢?因为越狱后会自动安装c
2014-08-01 13:56:53
656
转载 iOS麦克风运用——腾讯微博“吹一吹”
If, a couple of years back, you’d told me that people would expect to be able to shake their phone or blow into the mic to make something happen I would have laughed. And here we are.Detecting a s
2014-07-16 19:28:15
1211
转载 iOS不同版本获取UDID的方法
1)iOS 5.0 iOS 2.0版本以后UIDevice提供一个获取设备唯一标识符的方法uniqueIdentifier,通过该方法我们可以获取设备的序列号,这个也是目前为止唯一可以确认唯一的标示符。好景不长,因为该唯一标识符与手机一一对应,苹果觉得可能会泄露用户隐私,所以在 iOS 5.0之后该方法就被废弃掉了。 而且苹果做的更狠,今年5月份以后提交App Store的产品都不
2014-07-16 14:32:38
1485
转载 IOS 多线程NSThread、NSOperation、GCD详解
OS 多线程NSThread、NSOperation、GCD详解iOS有三种多线程编程的技术,分别是:1、NSThread2、Cocoa NSOperation (iOS多线程编程之NSOperation和NSOperationQueue的使用)3、GCD 全称:Grand Central Dispatch( iOS多线程编程之Grand Central Dispatch(GC
2014-07-15 16:48:34
2090
Java面试题及答案整理(2022最新版) 持续更新
2023-01-14
java mysql仓库管理系统源码+论文+课程报告
2023-01-13
Python爬虫入门教程:超级简单的Python爬虫教程
2023-01-13
计算机课程设计题目PPT
2022-12-16
元旦倒计时代码(HTML)
2022-12-09
DirectX修复工具V4.2标准版
2022-11-30
DirectX修复工具V4.2增强版
2022-11-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人