-
Wifi 定位原理及 iOS Wifi 列表获取
对于大家来说,Wifi 应该是一个很熟悉的词了,我们每天都可能在使用 Wifi 热点。Wifi 除了能给我们提供热点之外同时还有定位的作用, 现在移动设备的对用户的隐私保护是越来越严格了,就如定位功能,必须要经过设备用户的授权才能使用 Location 给这台设备定位。这些严格的隐私政策对用户起到到保护作用,但对开发人员却是一种阻碍,在产品强需求的情况下用户是会授权的,如地图类应用,但是另外一些没有对定位强需求的产品,用户可能就不会给你授权了,这是我们可以考虑下 Wifi 定位了。Wi...…
-
iOS开发中的小问题记录
NSKeyedArchiver 自定义对象写文件如果存储的对象类名有变动,则需要设置clasName, 方法为:“setClassName:forClass:” 使用 NSKeyedArchiver 进行数据持久化时, 系统会默认使用类名去建表,如果类名变了,那么使用新的类名肯定是从本地获取不到表的,代码执行崩溃。 所以需要在 NSKeyedArchiver 或者 NSKeyedUnarchiver 时使用 “setClassName:forClass:” 指定类名。断点配置...…
-
使用 TensorFlow 实现神经网络
介绍 一直关注 数据科学 、 机器学习 的同学,一定会经常看到或听到关于 深度学习 和 神经网络 相关信息。如果你对 深度学习 感兴趣,但却还没有实际动手操作过,你可以从这里得到实践。 在本文中,我将介绍 TensorFlow , 帮你了解 神经网络 的实际作用,并使用 TensorFlow 来解决现实生活中的问题。 读这篇文章前,需要知道 神经网络 的基础知识和一些熟悉编程理念,文章中的代码是使用 Pyhton 编写的,所以还需要了解一些 Python 的基本语法,才能更有利对于文章...…
-
Markdown工具集
什么是 Markdown Markdown 是一种方便记忆、书写的纯文本标记语言,用户可以使用这些标记符号以最小的输入代价生成极富表现力的文档:如您正在阅读的这篇文章。它使用简单的符号标记不同的标题,分割不同的段落,粗体 或者 斜体 某些文字. 很多产品的文档也是用markdown编写的,并且以“README.MD”的文件名保存在软件的目录下面。 一些基本语法标题 H1 :# Header 1 H2 :## Header ...…
-
Mac知识整合
.DS_Store 文件是什么?.DS_Store 是 Mac OS 保存文件夹的自定义属性的隐藏文件,如文件的图标位置或背景色,相当于 Windows 的 desktop.ini。1,禁止.DS_store 生成: 打开 “终端” ,复制黏贴下面的命令,回车执行,重启Mac即可生效。defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool TRUE2,恢复.DS_store生成:de...…
-
TensorFlow 在 iOS 平台上的使用(一)
距离上次使用 TensorFlow 在iOS平台上做的小 Demo,已经过了四个月了,今天忽然想再看看,发现 Demo 已经不见了,我只能从头在编一次,这次发现编译 iOS 库,简单多了。 tensorflow 下载地址,tensorflow 最近提交的时间:2016-11-03,commit:7b7c02de56e013482b5fe5ab05e576dc98fe5742 。 下载完成后打开文件,找到目录 tensorflow-master/tensorflow/contrib/...…
-
Xcode 8 使用笔记
最近使用 Xcode8遇到了一些问题,想记下来,发现简书上有位同学写了一篇很详细的教程 原文链接,比较懒惰的我就在他的基础上加了些我自己的一些笔记。Interface Builder随着 14 年的 iPhone6 和 6P 出来之后,iPhone 的屏幕尺寸也越来越多,屏幕适配是一个需要解决的问题,以后不一定苹果又出什么尺寸的 iPhone 呢。在 iPhone6 和 6P 发布的同一年,苹果推出的 Xcode6 中在原有的 Auto layout的基础上,添加了Size Classes...…
-
Jekyll搭建个人博客
之前写了一篇HEXO搭建个人博客的教程获得了很好评,尤其是在简书上目前已经累积了10W+的阅读量了,也有好心的读者主动给我打赏,在此感谢。 如果你看过我的文章会发现我现在的博客样式跟之前是有很大的区别的,之前我也是使用 HEXO 搭建的博客,后来发现使用 HEXO 在多台电脑上发布博客,操作起来并不是那么方便,果断就转到了 Jekyll 上,接下来我会讲如何使用 Jekyll 搭建博客,博客模板效果。介绍 Jekyll 是一个简单的博客形态的静态站点生产机器。它有一个模版目录,其中包含原...…
-
iOS设备左下角出现Appicon
最近发现我设备锁屏后,按Home屏幕变亮的时候,左下角出现一个灰色的Appicon (应用图标),关于这个应用图标的出现做了一些调研,下面是应用图标出现的几种情况。图一 iOS 系统自带的 App icon , 图二 第三方 App icon , 图三 通过 iBeacon 信号激活的 demo icon结论:有三种情况导致设备的左下角出现灰色的 App icon1、AppStore根据地点对App 推荐 简介 iOS 8会基于你的位置在锁屏界面上展示一个app快捷打开...…
-
Python自动化测试iOS项目
作为一个开发人员,为了保证自己的代码的健壮,写单元测试是必不可少的环节,然而最痛快的是每天去手动跑一遍所有的case。那么什么能帮我们解决这些繁琐的操作呢,大家应该会想到自动化测试脚本了,是的,我们可以借助脚本来完成全自动化测试,下面是我列的每天脚本自动执行流程: 1、pull git仓库里面的最新代码到本地。 2、然后打包成App。 3、安装到模拟器上。 4、运行App,执行单元测试,生成测试数据并保存到本地。 5、脚本读取测试数据,邮件发送给相关人员。...…
-
老司机带你剖析无码统计
无需开发介入,也可以统计移动App上按钮的点击次数,简称 无码统计 ,只要是跟App开发相关的同学,相信都对埋点统计有些了解,特别是针对开发人员来说,做代码埋点统计基本上是看不到直接收益也是开发人员最不愿做的一件事,这篇文章讲的就是如何让开发人员摆脱代码埋点的痛苦。 文章主要分为:使用场景、实现原理、适用范围、使用详情四个模块,不管你是产品,还是开发人员又或者是运营人员都适合读这篇文章。 在App开发过程中我们应该都有过类似的需求:想统计某些按钮的点击次数。例如,我们开发了一个注册...…
-
Git教程
介绍 Git是做项目的版本管理,你也可以称它们为版本管理工具。假如现在你有一个文件夹,里面可以是项目,也可以是你的个人笔记(如我这个博客),或者是你的简历、毕业设计等等,都可以使用git来管理。 目前常用的版本控制器有Git和SVN,即使这两个你没有全用过,至少也会听过,我这里以Git为例,个人比较喜欢Git,你也可以看看这篇文章:为什么Git比SVN好。我使用的是Mac,Mac上没自带Git环境,但是作为iOS开发者,我安装Xcode的时候,Xcode里是有自带Git的,所以我不需要...…
-
iOS开发迎来机器学习的春天---TensorFlow
人工智能、机器学习都已走进了我们的日常,尤其是愈演愈热的大数据更是跟我们的生活息息相关,做 人工智能、数据挖掘的人在其他人眼中感觉是很高大上的,总有一种遥不可及的感觉,在我司也经常会听到数据科学部的同事们提到 机器学习、数据挖掘 之类的词。但这些名词真的跟我们移动开发就没直接关系了吗? 作为移动开发者来说,无时无刻不被这些名词狠狠地敲打着脆弱的内心。💢 💢 💢 何时才能够将机器学习、深度学习应用在移动端,敲响移动端机器学习工业化的大门呢? 想象一下,某...…
-
机器学习入门(名词科普)
通用名词ML 名词解释: 机器学习(Machine Learning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。 它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。DL 名词解释: 深度学习(Deep Learning)是机器学习拉出的分支,它试图使用包含复杂结构或由多重...…
-
HEXO进阶
HEXO接近是最近有一些朋友提出的问题,然后我做了总结,如果你也在使用HEXO,不妨看看,应该会有些帮助。 1、博客部署样式出问题了怎么办? 2、电脑重装或者误删了本地博客怎么办? 3、想使用两台电脑写博客怎么办? 4、为何使用百度搜不到我的博客?使用Jekyll解决前三个问题。不得不说 Jekyll 确实可以解决我上面三个问题, 因为 Jekyll 是直接把Markdown格式的文章直接放在github仓库里的, 相当于直接用git来管理博客了, Github 官方也很推荐 Je...…
-
开发常用工具
工欲善其事必先利其器,选择一些好的工具可以成吨的提高自己的工作效率。个人开发常用工具的收集 cmd Markdown 作业部落出版的Markdown编辑器 RESTClient 一个开源的客户端HTTP调试工具。 lantern 蓝灯,一款开源的翻墙工具。 Charles 青花瓷, 一款HTTP/HTTPS的抓包工具。 Charles 从入门到精通 Sublime 一款强大的IDE,支持Python、JS、JSON格式化等等…更重要的是Sublime...…
-
我们日常生活中的 iBeacon
随着低功耗蓝牙的推出,iBeacon 的使用是越来越广泛了,如:微信的附近摇一摇功能,又或者是当你进入大型商场,一些店铺给你推送通知,VR 场景识别等等,这些表示 iBeacon 已经与我们的生活精密相连了。简介: 概念: iBeacon 是 iOS7 后苹果出的一项新技术,支持蓝牙4.0(或以上)的 iOS 设备,工作方式是低功耗蓝牙(Bluetooth Low Energy),向周围发送自己特有的ID,一个 iBeacon 硬件设备在不做任何处理的情况下一般可使用两三年左...…
-
CocoaPods使用心得
简介: 本章介绍什么是 CocoaPods ,如何使用 CocoaPods , 以及 CocoaPods 的原理,和使用 CocoaPods 时经常出现的一些问题。 Cocoapods 是 OS X 和 iOS 下的一个第三方库管理工具。我们能使用CocoaPods添加被称作 “Pods”的依赖库,并轻松管理它们的版本,CocoaPods会帮我们配置好这些三方库的路径及开发环境,极大的提升了开发者的工作效率。安装CocoaPods Mac下自带ruby,使用ruby的gem命令安装,ru...…
-
iOS动态更新
1、控件到 window 的层级关系: 2、分析控件的详细路径: 3、动态修改控件: 4、工具篇:视图的层级关系每个 App , 至少有一个根 Window , 通常情况下我们只用一个 。window 有一个 rootViewController , 这就是我们所谓的根视图 , 我们所有的控制器都是放在 rootViewController 里面的。如果在项目里有了这么一个路径 , 我们可以做什么呢? 在当项目很复杂 , 可以其它地方可以直接修改这个控件的状态 当某个控件命名...…
-
iOS 9 变化笔记
这里将介绍下我们日常开发一些从iOS8过度到iOS9给我们带来的一些变化,及解决方法。App Transport SecurityiOS9和OS X El Capitan的一个新特性,App Transport Security 的目地是提高Apple 操作系统的安全性以及在此操作系统上运行的任何应用的安全性。ATS是苹果针对与 NSURL这一层做的封装,iOS9后ATS默认是开启的,即网络传输需要使用HTTPS。如果想在iOS9后继续使用HTTP的话,有两条路可以走: 在Inf...…