Martin

思想空间

我是Martin,iOS / Android 开发者。


欢迎来到我的思想空间

开篇

开篇

先整理下一些有用的链接

自己折腾了这个博客,不知从何开始,先整理下浏览器中书签的链接

iOS

分享个人ios开发练手之作,显示ios设备信息的程序

Zbar duplicate symbol base64encode 二维码扫描

iOS应用内付费(IAP)开发步骤列表

Auto Layout 进阶

老项目的#iPhone6与iPhone6Plus适配#LaunchImage适配

关于ios7访问照相机隐私权限的设置

ALAsset,ALAssetsLibrary,ALAssetsgroup常见属性及用法

编译iOS下支持arm64的.a库

pthread多线程编程整理 在iOS下用户c++写网络时遇到了一些问题

线程终止方式(4)

CoreData多线程安全

关于流媒体(m3u8)的播放与下载

iOS视频通话方案

使用iFrameExtractor实现视频直播

Quick-cocos2d-x 与COCOS2DX 区别

MLEmojiLabel

iOS之富文本

iPhone6 和plus出来后,现有的icon要做多大尺寸?

推荐IOS开发3个工具:Homebrew、TestFight、Crashlytics

配置fabric-crashlytics教程

iOS7下隐藏statusbar

程序启动时隐藏状态栏,进入应用程序之后显示状态栏

Appium1.4 的简介、装配及其使用真机测试(IOS版)

MagicalRecord入门教程

细说GCD(Grand Central Dispatch)如何用

Objective-C 引用计数原理

iOS9AdaptationTips

开源项目:MMPopupView

详解CALayer 和 UIView的区别和联系

iOS 高效添加圆角效果实战讲解

UIKit性能调优实战讲解

JSPatch – 动态更新iOS APP

Protocol Buffers for Obj-C and Apple Swift

iOS开发 Xcode8中遇到的问题及改动

Xcode8调试黑科技:Memory Graph实战解决闭包引用循环问题

Core Data并发调试

针对苹果iOS最新审核要求为应用兼容IPv6

iOS应用支持IPV6,就那点事儿

swift

Using Swift with Cocoa and Objective-C

The Swift Programming Language 中文手册

The Swift Programming Language 中文版

swift与objective-c混编

Swift 最佳实践

Swift类型之间转换

Chatto is a Swift lightweight framework to build chat applications

When (not) to use guard

Loggerithm

喵神swift tips

mqtt

MQTT协议简记

MQTT协议笔记之连接和心跳

MQTT-Client-Framework项目中采用了这个框架,改了很多源码(竟然还有bug!)

CocoaMQTT

mqtt-client

采用MQTT协议实现Android消息推送

Android

如何给你的Android 安装文件(APK)瘦身

[个人总结]APK瘦身实践

Android问题集锦之三十四:android studio导入项目下载gradle-x.x.x-all.zip

Android热更新实现原理

提供6种方法来判断App处于前台还是后台

Gradle脚本基础全攻略

Android应用启动优化:一种DelayLoad的实现和原理(上篇)

Instant Run 浅析

Android动态加载黑科技 动态创建Activity模式

四步实现ChromeLikeSwipeLayout效果

Android 开发中的日常积累

Android 沉浸式状态栏攻略 让你的状态栏变色吧

Android Volley库源码简析(Image Request部分

Android逆向分析必备网址大全

Android 项目部署之Nexus私服搭建和应用

Android App 性能优化实践

droiReverse 反编译

Android内存泄露案例分析

Android网络–我是怎么做的: Volley+OkHttp+Https

Android 平滑图片加载和缓存库 Glide 使用详解

快速Android开发系列通信篇之EventBus

深入讲解Android中Activity launchMode

Android异步任务处理框架AsyncTask源码分析

Android ListView工作原理完全解析,带你从源码的角度彻底理解

浅谈 Android 编程思想和架构

APK瘦身记,如何实现高达53%的压缩效果

给 Android 开发者的 RxJava 详解

Jenkins+Gradle实现android开发持续集成、打包

下一代Android打包工具:packer-ng-plugin

ffmpeg

RecordVideoDemo 封装为lib

TouchToRecord 有详细的源码

其他

如何快速正确的安装 Ruby, Rails 运行环境

Swiftist

整理了一份React-Native学习指南

onevcat

函数式编程初探

函数式编程扫盲篇

Code Review 最佳实践

ios app 实现热更新(无需发新版本实现app添加新功能

读书雷达

移动端图片格式调研

Don’t let your UIViewController think for itself

在MAC上查找和设置$JAVA_HOME

xcode插件管理

tips

  • 报错:implicitly declaring library function **

    因为有一些函数太常用了如:printf,memset等,在编译器不是很严格的情况下,不用包含头文件,编译器会为这个方法隐式生成一个声明,一般只是报一个警告,但有些编译器如iOS9.3后会非常严格,导致报错,只需要添加头文件即可

  • android,一个很复杂的activity中下面有一个editview,点击弹起键盘editview没有跟着弹起,在activity的layout中最外层添加 android:fitsSystemWindows=”true” 即可

  • 未能找到使用指定主机名的服务器 dns解析问题,可以试下https://www.dnspod.cn/httpdns

最近的文章

苹果审核被拒的原因及快速审核

整理一些苹果审核被拒的原因被苹果拒了无数次,从现在起记录所有的被拒原因,积累经验 图片中有个NIKE的球,侵权。换图解决 图片中有个大白的图,侵权。换图解决 APP中有h5做的小游戏,被拒,隐藏解决 注册流程有性别选项,苹果说产品用不到性别,被拒,先申诉,申诉不行就隐藏吧 APP名字中有“猜游戏,猜娱乐”,产品功能中没有相关功能。修改名字后解决。这条比较奇怪,根据这个经验,截图中有找不到的功能,也应该被拒才对,但经过实测,我们的UI同学在截图中的画了一些完全没有的功能,审核竟然过...…

总结知识管理继续阅读