在互联网飞速发展的今天,相信很多程序开发者对 GitHub 很熟悉,我们在这里学习知识、分享自己的开源库或者开源代码、寻找良好的框架或解决方案和帮助其他开发者答疑解惑。
既然我们在 GitHub 上做了这么多事情,我们就来思索一下,在 GitHub 上有哪些值得关注学习的开源项目呢?
不知道的没有关系,在这里我汇总了许多 Github 优秀开源项目 和主流开发使用的网站、解决问题方案收集以及学习网站或资料以分享给大家,此开源项目指南涵盖了 iOS, macOS X, Blockchain, Flutter, Weex, H5, Games, C++, Script 等多个方面的内容,其中,iOS大致包涵以下内容:
- 1、常用第三方库:AFNetworking & Alamofire, SDWebImage, ReactiveCocoa & RxSwift, Masonry & SnapKit, YYKit;
- 2、支付: 内购(IAP), ApplePay 和 第三方支付;
- 3、播放器: 视频播放器和音乐播放器;
- 4、IM和直播;
- 5、图像处理和绘制(OpenGL, OpenGLES, Metal, GPUImage, CoreGraphics);
- 6、逆向开发;
- 7、安全攻防和应用加固, 数据安全和算法;
- 8、导航栏和状态栏;
- 9、数据持久(Data Persistence);
- 10、侧边菜单(Side Menu), 蓝牙, 手势指纹面容ID密码解锁, 扫码, 下拉刷新和上拉加载, 指示器, Toast, Menu 和弹出视图, WebView 和进度条, 图片浏览器, 动画, 选择器, 搜索, 分享, 图片验证码, 获取设备相关信息, 广告, Sensor, Privacy, 高仿项目及Demo等。
iOS
Apple Developer
Apple Open Source - Releases - https://opensource.apple.com/source/
Documentation Archive - This library is no longer being updated. Browse the developer documentation including API reference, articles, and sample code.
Apple Developer Documentation - Browse the latest developer documentation including API reference, articles, and sample code.
常用第三方库
AFNetworking和Alamofire
- AFNetworking - A delightful networking framework for iOS, macOS, watchOS, and tvOS.
NSURLSession:
AFURLSessionManager
AFHTTPSessionManager
Security:
AFSecurityPolicy
Reachability:
AFNetworkReachabilityManager
Serialization:
-
<AFURLRequestSerialization>
AFHTTPRequestSerializer
AFJSONRequestSerializer
AFPropertyListRequestSerializer
-
<AFURLResponseSerialization>
AFHTTPResponseSerializer
AFJSONResponseSerializer
AFXMLParserResponseSerializer
AFXMLDocumentResponseSerializer (macOS)
AFPropertyListResponseSerializer
AFImageResponseSerializer
AFCompoundResponseSerializer
UIKit:
- Adding properties in the form of catagory.
- Alamofire - Alamofire is an HTTP networking library written in Swift.
Core目录下各个文件的功能简述:
- Alamofire.swift -- 该文件中主要是给用户提供一些便利的调用方法,用户可以直接调用该文件中的便利方法来使用Alamofire相关功能。
- Manager.swift -- Manager中定义了Session对象,Session相关的Delegate,以及Delegate执行的队列等相关信息,在Manager中创建Request对象发起请求。Manager管理的就是各种请求,Manager对象是以单例的形式对外开放的。
- Request.swift -- 该文件如其名,就是负责创建Session的各种task的,并执行相关的SessionTask,并调用相关书籍解析的功能模块对数据进行解析并通过回调返回给用户。
- ParameterEncoding.swift -- 负责请求参数的各种编码(URL、URLEncodedInURL、JSON、PropertyList等编码),并将编码后的数据与URLRequest结合后的结果进行返回。
- Result.swift -- 对解析后的数据封装成Result对象。
- Response.swift -- 负责将服务器相应的数据进行封装生成Response对象,该对象中就包括上述的Result对象,用户最终会通过闭包回调的形式获取到该Response的对象。
- Notifications.swift -- 其中是一个Notification结构体,该结构体中定义了一些字符串,这些字符串就是所需通知的Key,当网络请求DidResume、DidSuspend、DidCancel、DidComplete都会发出通知。
- Error.swift -- 其中是一个Error的结构体,其中封装的是各种错误状态。
Features目录下各个文件的功能简述:
- Download.swift -- 对Manager和Request类进行扩展,使其支持Down Task,其中封装了NSURLSessionDownloadDelegate相关代理方法。
- Upload.swift -- 在该文件中也是对Manager和Request类进行的扩展,使其支持Upload Task,其中封装了NSURLSessionDataDelegate中获取上传数据进度的代理方法,也就是taskDidSendBodyData代理方法。
- MultipartFormData.swift -- 该文件从名字就可以看出是为了组织多表单数据上传的数据的,在Upload Task中就使用到了MultipartFormData。
- Stream.swift -- 和Download和Upload文件相似,该文件中也是对Manager和Rquest做延展,主要使其支持数据流的传输,其中主要封装和实现了NSURLSessionStreamDelegate相关的代理方法。
- ResponseSerialization.swift -- 该文件中主要是对Request类进行数据解析的延展的。其中封装了各种对响应数据的解析方式,其中包括Data、String、JSON、PropertyList等解析方式。
- NetworkReachabilityManager.swift -- 该文件主要是对SystemConfiguration.framework中的SCNetworkReachability相关的东西进行封装的,主要用来管理和监听网络状态的变化。
- ServerTrustPolicy.swift -- 这个文件主要是对NSURLSession做的延展,其中定义了各种网络请求的认证策略,主要证书认证相关东西。
- Timeline.swift -- 该文件是为了方便调试而生的,其中记录了相关操作的时间点,并且对其进行记录,便于在Debug时使用到。
- Validation.swift -- 主要是用来验证请求是否成功,如果出错了就做相应的处理。
SDWebImage
- SDWebImage - This library provides an async image downloader with cache support. For convenience, we added categories for UI elements like UIImageView, UIButton, MKAnnotationView (Examples).
Coders for additional image formats
- SDWebImageWebPCoder - coder for WebP image format. Based on libwebp
- SDWebImageHEIFCoder - coder to support HEIF image without Apple's Image/IO framework, iOS 8+/macOS 10.10+ support.
- SDWebImageBPGCoder - coder for BPG format
- SDWebImageFLIFCoder - coder for FLIF format
- and more from community!
Loaders
- SDWebImagePhotosPlugin - plugin to support loading images from Photos (using Photos.framework)
Integration with 3rd party libraries
- SDWebImageFLPlugin - plugin to support FLAnimatedImage as the engine for animated GIFs
- SDWebImageYYPlugin - plugin to integrate YYImage & YYCache for image rendering & caching
- SDWebImageProgressiveJPEGDemo - demo project for using SDWebImage + Concorde library for Progressive JPEG decoding
Make our lives easier
- libwebp-Xcode - A wrapper for libwebp + an Xcode project.
- libheif-Xcode - A wrapper for libheif + an Xcode project.
- and more third-party C/C++ image codec libraries with CocoaPods/Carthage support.
ReactiveCocoa和RxSwift
响应式编程
- ReactiveCocoa - Reactive extensions to Cocoa frameworks, built on top of ReactiveSwift), It Offers composable, declarative and flexible primitives that are built around the grand concept of streams of values over time. These primitives can be used to uniformly represent common Cocoa and generic programming patterns that are fundamentally an act of observation.
- RxSwift - Reactive Programming in Swift (RxExample).
RxSwift comprises five separate components depending on eachother in the following way:
┌──────────────┐ ┌──────────────┐
│ RxCocoa ├──── RxRelay │
└───────┬──────┘ └──────┬───────┘
│ │
┌────────────────────────────────┐
│ RxSwift │
└────────────────────────────────┘
│ │
┌───────┴──────┐ ┌──────┴───────┐
│ RxTest │ │ RxBlocking │
└──────────────┘ └──────────────┘
Masonry和SnapKit
链式编程,AutoLayout
- Masonry - Harness the power of AutoLayout NSLayoutConstraints with a simplified, chainable and expressive syntax. Supports iOS and OSX Auto Layout.
UIEdgeInsets padding = UIEdgeInsetsMake(10, 10, 10, 10);
[view1 mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.equalTo(superview.mas_top).with.offset(padding.top); //with is an optional semantic filler
make.left.equalTo(superview.mas_left).with.offset(padding.left);
make.bottom.equalTo(superview.mas_bottom).with.offset(-padding.bottom);
make.right.equalTo(superview.mas_right).with.offset(-padding.right);
}];
- SnapKit - A Swift Autolayout DSL for iOS & OS X (http://snapkit.io.
import SnapKit
class MyViewController: UIViewController {
lazy var box = UIView()
override func viewDidLoad() {
super.viewDidLoad()
self.view.addSubview(box)
box.snp.makeConstraints { (make) -> Void in
make.width.height.equalTo(50)
make.center.equalTo(self.view)
}
}
}
YYKit
- YYKit - 一组庞大、功能丰富的 iOS 组件。
- YYModel - 高性能的 iOS JSON 模型框架。
- YYCache - 高性能的 iOS 缓存框架。
- YYImage - 功能强大的 iOS 图像框架。
- YYWebImage - 高性能的 iOS 异步图像加载框架。
- YYText - 功能强大的 iOS 富文本框架。
- YYKeyboardManager - iOS 键盘监听管理工具。
- YYDispatchQueuePool - iOS 全局并发队列管理工具。
- YYAsyncLayer - iOS 异步绘制与显示的工具。
- YYCategories - 功能丰富的 Category 类型工具库。
网络相关
网络相关内容:AFNetworking的封装,NSURLSession的封装, Reachability, CocoaHTTPServer, GCDWebServer.
SwiftHTTP - Thin wrapper around NSURLSession in swift. Simplifies HTTP requests.
BANetManager - 基于AFNetworking 3.0、3.1最新版本的封装,集成了 get / post / put / delete 方法请求数据,单图/多图上传,视频上传/下载,网络监测 等多种网络请求方式。
HYBNetworking - 基于AFNetworking3.0以上版本封装的网络层。提供常用的GET/POST接口、上传下载图片、文件接口、支持缓存等。
HLNetworking - 基于AFNetworking的高阶网络请求管理器。
CCPAFNNetworking - AFN与MBProgressHUD的组合使用。
Reachability - ARC and GCD Compatible Reachability Class for iOS and MacOS. Drop in replacement for Apple Reachability.
CocoaWebResource - A file transfer solution for iPhone and iPod Touch. Support uploading, download and delete files via browser.
GCDWebServer - A modern and lightweight GCD based HTTP 1.1 server designed to be embedded in iOS, macOS & tvOS apps.
CocoaHTTPServer - A small, lightweight, embeddable HTTP server for Mac OS X or iOS applications.
导航栏和状态栏
WRNavigationBar - 超简单!!! 一行代码设置状态栏、导航栏按钮、标题、颜色、透明度,移动等。【 Swift版 | Priview 1 | Priview 2 | Priview 3 】
NNNavigationBar - 实现导航条背景渐变过渡动画的轻量级框架。【 Priview 1 | Priview 2 】
RTRootNavigationController - Implicitly make every view controller has its own navigation bar.
GKNavigationController - iOS自定义导航栏-导航条联动(仿网易新闻、网易云音乐等导航栏滑动效果)。
EasyNavigation - 一款超级简单的导航条管理工具。完全自定义导航条。没有UINavigationBar 和 UINavigationItem 这两个类。完全是对UIView的操作。 所有操作都能一行代码,操作之间完全独立,互不影响。
FDFullscreenPopGesture - An UINavigationController's category to enable fullscreen pop gesture in an iOS7+ system style with AOP.
JZNavigationExtension - JZNavigationExtension integrates some convenient features for UINavigationController and easy to use.
BBGestureBack - OC and Swift full screen return gesture(纯OC 和 纯Swift编写,类淘宝、京东等全屏滑动返回效果)。
Side Menu
MMDrawerController - A lightweight, easy to use, Side Drawer Navigation Controller.
RESideMenu - iOS 7/8 style side menu with parallax effect.
支付
内购IAP
DYFStore-Swift - A lightweight and easy-to-use iOS library for In-App Purchases.
DYFStore
uses blocks and notifications to wrapStoreKit
, provides receipt verification and transaction persistence and doesn't require any external dependencies. ( DYFStoreKit (Objective-C) )RMStore - A lightweight iOS library for In-App Purchases.
MKStoreKit - The "Goto" In App Purchases Framework for iOS 8+.
IAPHelper - IAP helper for Apple in app purchases. It uses ARC and blocks for ease of use. Ready to use with newsstand subscriptions. No more maintenance for this repo. Please use the SwiftyStoreKit
SwiftyStoreKit - SwiftyStoreKit is a lightweight In App Purchases framework for iOS 8.0+, tvOS 9.0+ and macOS 10.10+.
OfferingCompletingAndRestoringInAppPurchases.zip - Offering completing and restoring In-App Purchases.
DYFStoreReceiptVerifier_Swift - This class is developed in Swift language, which is used to verify App Store receipts.
DYFStoreReceiptVerifier - This class is developed in Objective-C language, which is used to verify App Store receipts.
VerifyStoreReceiptiOS - A helper class for verifying App Store receipts under iOS.
ApplePay
YasinZhou - ApplePayDemo - ApplePay苹果支付demo。
lintide - ApplePayDemo - Apple Pay demo 苹果支付示例。
ApplePayExample - ApplePay Example.
iTofu - ApplePayDemo - Pay Demo with Swift.
第三方支付
XHPayKit - 不用官方SDK实现微信支付、支付宝支付。
PayDemo - 支付宝和微信支付两种方式集成。
App支付 - 支付宝开放平台 - APP支付适用于商家在 App 应用中集成支付宝支付功能。商家APP调用支付宝提供的 SDK,SDK 再调用支付宝APP内的支付模块。如果用户已安装支付宝 APP,商家 APP 会跳转到支付宝中完成支付,支付完后跳回到商家APP内,最后展示支付结果。如果用户没有安装支付宝 APP,商家 APP 内会调起支付宝网页支付收银台,用户登录支付宝账户,支付完后展示支付结果。目前支持手机系统有:iOS(苹果)、Android(安卓)。
APP支付 - 微信支付商户平台 - APP支付是指商户通过在移动端应用APP中集成开放SDK调起微信支付模块来完成支付。适用于在移动端APP中集成微信支付功能的场景。
播放器
视频播放器
ijkplayer - Android/iOS video player based on FFmpeg n3.4, with MediaCodec, VideoToolbox support (FFmpeg).
ZFPlayer - Support customization of any player SDK and control layer (支持定制任何播放器SDK和控制层)。
CLPlayer - 自定义支持全屏的播放器。
QPlayer - A powerful video player that you can't miss, supports m4v, wmv, 3gp, mp4, mov, avi, mkv, mpeg, mpg, flv, rm, rmvb, mp3 format. Enter any HTTP, RTSP, RTMP, HLS address play network streaming or live. It uses ffmpeg,you can transfer files via wifi. It aggregates several live, video and short video platforms, and you can watch live, video and short video online.
BMPlayer - A video player for iOS, based on AVPlayer, support the horizontal, vertical screen. support adjust volume, brightness and seek by slide, support subtitles.
SJVideoPlayer - Video Player. Support cocoapods & Generate GIF & Export & Localization & Play in View(UIView || TableHeader || TableCell || CollectionCell) & Keyboard Orientation & StatusBar(Style&Hide).
kxmovie - movie player for iOS using ffmpeg.
ffmpeg-avplayer-for-ios-tvos - A tiny but powerful iOS and Apple TV OS av player framework that's based on the FFmpeg library.
-
Eleven - Eleven Player is a simple powerful video player.use ffmpeg.
SBPlayer - 基于AVPlayer封装的轻量级播放器,可以播放本地网络视频,易于定制,可以横屏竖屏,支持M3u8、mp4等格式视频本地播放或者网络播放,通过masonry约束,适配各种尺寸iPhone。
VKVideoPlayer - he same battle tested video player used in our Viki iOS App enjoyed by millions of users all around the world.
KRVideoPlayer - 类似Weico的播放器,支持竖屏模式下全屏播放。
PBJVideoPlayer - ️ video player, simple way to play and stream media on iOS/tvOS.
vlc-ios - VLC for iOS and tvOS official mirror.
vlckit - VLCKit is a generic multimedia library for any audio or video playback needs on macOS, iOS and tvOS.
MRVLCPlayer - 一款基于VLC的播放器,支持常用的各大手势功能,支持几乎所有主流格式。
LMIJKPlayer - 基于IJKPlayer,支持横屏、竖屏,上下滑动调节音量、屏幕亮度,左右滑动调节播放进度, 支持横竖屏UI不同的完整播放器Demo。
LMAVPlayer - 基于苹果原生AVPlayer,支持横屏、竖屏,上下滑动调节音量、屏幕亮度,左右滑动调节播放进度, 支持横竖屏UI不同的完整播放器Demo.
Eleven - a simple powerful video player. Support m4v, wmv, 3gp, mp4, mov, avi, mkv, mpeg, mpg, flv, vob format.Enter any HTTP, RTSP, RTMP, RTP address play network streaming or live.Eleven player use ffmpeg.
KSYMediaPlayer_iOS - 金山云iOS播放SDK(KSYUN Live Streaming player SDK),支持RTMP HTTP-FLV HLS 协议(supporting RTMP HTTP-FLV HLS protocol),直播延时2-3秒(Living delay 2 or 3 seconds) 。与系统播放器MPMoviePlayerController接口一致,可以无缝快速切换至KSYMediaPlayer;本地全媒体格式支持, 并对主流的媒体格式(mp4, avi, wmv, flv, mkv, mov, rmvb 等 )进行优化;支持广泛的流式视频格式, HLS, RTMP, HTTP Rseudo-Streaming 等;低延时直播体验,配合金山云推流sdk,可以达到全程直播稳定的4秒内延时;实现快速满屏播放,为用户带来更快捷优质的播放体验;支持画面旋转,音量调节等各种功能;
MRDLNA - 纯OC实现的iOS DLNA 投屏功能, 支持各大主流电视盒子(小米,华为,乐视,移动魔百盒等), 可以播放,暂停,快进退,调音量,退出.
DLNA - DLNA sample code using CyberLink Objective-C Wrapper. This sample can browse contents from DMS and play content at DMR.
DLNA_iOS_Platinum - DLNA server on iOS using Platinum. This APP is an implementation of a DLNA media server powered by Platinum libs. It can publish the media files in iTunes and Photo Album to any DLNA player which is in the same network enviroment.
ALMoviePlayerController - A drop-in replacement for MPMoviePlayerController that exposes the UI elements and allows for maximum customization.
音乐播放器
StreamingKit - A fast and extensible gapless AudioPlayer/AudioStreamer for OSX and iOS (iPhone, iPad).
LyricsAnalysis - iOS音乐播放器之锁屏效果(仿网易云音乐和QQ音乐)+ 歌词解析 :锁屏歌曲信息、控制台远程控制音乐播放:暂停/播放、上一首/下一首、快进/快退、列表菜单弹框和拖拽控制台的进度条调节进度(结合了QQ音乐和网易云音乐在锁屏状态下的效果)、歌词解析并随音乐滚动显示。
GKWYMusic - iOS基于FreeStreamer的仿网易云音乐播放器。
ios-audio-remote-control - This repo demonstrates how to control the software based audio remote control in iOS.
IM和直播
AtChat - IOS聊天项目、基于XMPP框架开发,实现了登陆注册(注册以手机号码注册、短信验证) 、发送消息、接收消息、接收好友请求、发起好友请求 、图片消息、语音消息、视频语音、聊天历史记录、最近联系人、二维码添加好友、用户头像上传、朋友圈、发朋友圈、异地登录退出等功能。
BAWeChat - 博爱微信,使用原生 frame + MVVM + MVC + QMUIKit + BAKit 开源的微信。
MomentKit - MVC模式实现WeChat朋友圈功能,代码整洁易读。支持富文本(链接/表情/电话/邮箱等)、点赞、评论/回复评论、图片预览、文字拷贝等功能。
ABigFishTV - 大鱼电视直播 基于ijkplayer的播放器 700多个电视台 包括央视,各地方台,卫视,熊猫直播,社会化分享,登陆,仿微博等 (支持iphonex)。
TGTV - TGTV直播APP用Swift3.1编写,采用MVVM架构,本demo运用protobuf实现即时聊天(弹幕)、礼物动画等。
MGMiaoBo - 首创房间内多视频直播模式,移动直播新体验,多人秀场更好玩。随时随地与主播聊天互动亲密接触,清纯美女、校花嫩模、吃货萌妹、通通都有…… 1.项目引导页业使用ijkPlayer播放视频;2.首页使用父子控制器进行界面之间的切换;3.自定义MJRefresh刷新控件,替换头部刷新gif图片;4.使用分类理由贝塞尔曲线为UIImageView添加圆角;5.服务器交互使用的是https,用json格式,面向模型开发;其他:全局网络请求封装,页面数据缓存处理,通知,动画,基础控制器封装,使用xib的AutoLayout和Masonry第三方库等。
MGDYZB - Xcode8以上版本,已升级为Swift3.x语法。斗鱼-每个人的直播平台提供高清、快捷、流畅的视频直播和游戏赛事直播服务,包含英雄联盟lol直播、穿越火线cf直播、dota2直播、美女直播等各类热门游戏赛事直播等。
LFLiveKit - LaiFeng IOS Live Kit,H264 and AAC Hard coding,support GPUImage Beauty, rtmp transmission,weak network lost frame,Dynamic switching rate.
LXPlayerLive - 一步步搭建视频直播系统,基于LFLiveKit+ijkplayer+rtmp(iOS端)。
inke-demo - 仿映客直播app(最新)原版礼物列表,直播弹幕,最新热门页面,原版动画登陆页,实现了oc项目使用Socket.IO-Client-Swift 绑定后台node服务器实现实时聊天功能。
WZHLiveShow - IOS视频直播 + 推流实现 采用当前主流开源框架B站的ijkplayer 以及优酷土豆旗下的LFLiveKit实现推流。
ATijkplayeriOS - 1、编译ijkPlayer,支持RTSP拉流播放,支持http等格式。2、加入了MD360Player4iOS,实现视频的全景渲染。3、MovieRecorder用实时拉过来的音视频数据进行录视频。4、LFLiveKit用拉流过来的原始音视频数据(YUV、PCM)进行推流直播。
LFLiveKit_Record_Recode - 因为个人项目需要,对边推边录可定制性要求较高,LFLiveKit录制功能可定制性较低,此项目重构了其录制接口,方便项目需要。
LiveVideoCoreSDK - LiveVideoCoreSDK是基于IOS的视频直播SDK(支持IOS8.1以上,基于开源videocore进行了改进),多滤镜IOS推流SDK: 基于GPUImage的多滤镜拍摄, 滤镜资源丰富. GPUImageRtmpPush。
PLPlayerKit - PLPlayerKit 是七牛推出的一款免费的适用于 iOS 平台的播放器SDK,采用全自研的跨平台播放内核,拥有丰富的功能和优异的性能,可高度定制化和二次开发。(ios-playback-end-the-sdk)
PLMediaStreamingKit - PLMediaStreamingKit 是七牛推出的一款适用于 iOS 平台的推流 SDK,支持 RTMP 推流,h.264 和 AAC 编码,硬编、软编支持。具有丰富的数据和状态回调,方便用户根据自己的业务定制化开发。具有直播场景下的重要功能,如:美颜、背景音乐、水印等功能。
Runtime
ObjC runtime opensource - Source code comes from Apple opensource.
DYFSwiftRuntimeProvider - Swift Runtime 包装,可快速使用字典转模型、归档解档、添加一个方法、交换两个方法、获取所有属性名和方法名。
DYFRuntimeProvider - Objective-C Runtime 包装,可快速使用字典转模型、归档解档、添加一个方法、交换两个方法、获取所有属性名和方法名。
Runtime Exploration - Runtime是iOS系统中重要的组成部分,面试也是必问的问题,所以Runtime是一个iOS工程师必须掌握的知识点。
Data Persistence
DB, Keychain, NSUserDefaults, Write
DYFSwiftKeychain -
DYFSwiftKeychain
is used to save text and data in Keychain securely for iOS, OS X, tvOS and watchOS. ( DYFKeychain (Objective-C) )UICKeyChainStore - UICKeyChainStore is a simple wrapper for Keychain on iOS, watchOS, tvOS and macOS. Makes using Keychain APIs as easy as NSUserDefaults.
GenericKeychain - This sample shows how to add, query for, remove, and update a keychain item of generic class type. It also demonstrates the use of shared keychain items.
fmdb - A Cocoa / Objective-C wrapper around SQLite.
JQFMDB - FMDB的封装,操作简单,线程安全,扩展性强,直接操作model或dictionary。
逆向开发
fishhook
- fishhook - A library that enables dynamically rebinding symbols in Mach-O binaries running on iOS.
[图片上传失败...(image-f80e33-1586430590815)]
逆向辅助工具
- iOSOpenDev - Github
- theos - 一个越狱开发工具包 (Github)
- class-dump - Generate Objective-C headers from Mach-O files.
- Clutch - a high-speed iOS decryption tool. It supports the iPhone, iPod Touch, and iPad.
- optool - Command Line Tool for interacting with MachO binaries on OSX/iOS.
- Hook-Tools
- HackAppTool
- Tools
逆向案例
WeChat_tweak - iOS 版功能较全的微信插件,具备抢红包,修改微信运动步数,伪定位(朋友圈和附近的人),屏蔽消息和群消息,过滤群,防撤回消息和信息内容页的背景透明等功能。【 Priview 1 】
-
WeChatRedEnvelop - iOS版微信抢红包Tweak。
-
FakeWeChatLoc - iOS伪装微信位置。
FakeWeChatLocation - A tweak that can fake location info in WeChat.
WeChatRedEnvelopesHelper - iOS版微信抢红包插件,支持后台抢红包,tweak源文件。
AutoGetRedEnv - 微信自动抢红包。
WXAccountSwitcher - Fast switch WeiXin account.
FishChat - Hook WeChat.app on non-jailbroken devices. (blog)
WeTransparentChat - Use back camera capturing make WeChat's message content page's background transparent.
安全攻防和应用加固
mixplaintext - 对 Xcode 项目工程所有的 objective-c 文件内包含的明文进行加密混淆,提高逆向分析难度。
数据安全和算法
DYFCryptoUtils - 一行代码实现 iOS Base64, 32/16位MD5, DES, AES, RSA算法,操作简单好用。(Achieves Base64, 32/16 bit MD5, DES, AES and RSA algorithms for iOS with one line of code. The operation is simple and easy to use.)
AESCipher-iOS - AES encryption working between Objective-C and Java. (AESCipher-Java)
AESCrypt-ObjC - A simple and opinionated AES encrypt / decrypt Objective-C class that just works.
RSADemo - RSA加解密相关方方法,以及密钥格式的生成与转换。
Encryptions - this project is for many kinds odf encryption.
CryptoSwift - CryptoSwift是在Swift中实现的越来越多的标准和安全密码算法的集合。
Security-iOS - 封装了一些iOS上使用的NSData分类,主要用于 RSA加密、AES加密、数据签名、签名校验、MD5、SHA1、SHA256 常用hash等工具。
CocoaSecurity - Encrypt/Decrypt: AES. Hash: MD5, SHA(SHA1, SHA224, SHA256, SHA384, SHA512). Encode/Decode: Base64, Hex.
BBRSACryptor - 使用OpenSSL进行公钥和私钥的加解密。
BBRSACryptor-XHAdd - 1行代码调用RSA公钥、私钥生成、客户端RSA加密、解密、RSA签名、签名验证等。
3desDemo - 3des Demo.
Base64 - Objective-C Base64 Additions for NSData and NSString.
CryptoCompatibility - CryptoCompatibility shows how to do common cryptographic operations using Apple APIs such that the results match other common cryptographic APIs, most notably OpenSSL.
蓝牙
EasyBluetooth - 一款iOS BLE蓝牙调试工具,非常简单容易,也可以作为一个蓝牙库,快速集成和开发。 可以两步搞定蓝牙开发操作。第一步连接设备,第二步特征读写数据。
WHBLEDemo - CoreBluetooth central and peripheral demo with OC/Swift (iOS蓝牙中心设备和外设开发,包含OC/Swift版本) 。
BabyBluetooth - 简单易用的蓝牙库,基于CoreBluetooth的封装,并兼容ios和Mac osx。
BluetoothKit - Easily communicate between iOS/OSX devices using BLE.
MultipeerConnectivity - 蓝牙MultipeerConnectivity。
WEBlueToothManager - 一个蓝牙4.0的智能硬件架构。(blog)
MPBluetoothKit - This is a block-based framework for building Bluetooth iOS apps using the CoreBluetooth Framework.Its a very powerful and useful,and very easy to use it.
手势指纹面容ID密码解锁
DYFAuthIDAndGestureLock - 手势密码解锁 和 TouchID(指纹)/ FaceID(面容)解锁,代码简洁高效。(Gesture passcode unlocking and TouchID (fingerprint) / FaceID (facial features) unlocking, concise code and efficient.)
XGTouchDemo - 手势密码解锁和指纹TouchID解锁的demo。
TouchIDAndGestureLock - 指纹解锁、手势解锁。
YLSwipeLockView - A swipe password view to unlock an application written in objective-c.
YZAuthID - TouchID(指纹)/ FaceID(面容)验证类库,代码简洁,高效。
BiometricAuthentication - Use Apple FaceID or TouchID authentication in your app using BiometricAuthentication.
布局
- WSCollectionViewFlowLayout - 可替代UICollectionViewFlowLayout的标签流布局,支持固定有规则的布局形式。实现了UICollectionViewDelegateFlowLayout协议方法。使用形式和系统Flowlayout相同。
图像处理和绘制
OpenGL和OpenGLES
Metal
GPUImage
GPUImage - An open source iOS framework for GPU-based image and video processing. http://www.sunsetlakesoftware.com/2012/02/12/introducing-gpuimage-framework
GPUImage2 - A BSD-licensed Swift framework for GPU-accelerated video and image processing.
GPUImage3 - A BSD-licensed Swift framework for GPU-accelerated video and image processing using Metal.
CoreGraphics
Graphs - 通过bezierPath,画出曲线图,并且加入动画。
LXBezierPath - 进度条绘制。
图像模糊化
BlurViewExample - iOS实现模糊效果的几种方法和示例。
SVBlurView - A simple reimplementation of FXBlurView for iOS 7.
iOS-blur - Blur a UIView.
图片浏览器
SDPhotoBrowser - A image browser which is easy for using. 非常简单易用的图片浏览器,模仿微博图片浏览器动感效果,综合了图片展示和存储等多项功能。
YHPhotoBrowser - 轻量级网络图片浏览器 优化性能 Gif播放性能 类新浪微博打开关闭动画 类微信图片浏览下拉图片消失。
HZPhotoBrowser - 图片浏览器,photoBrowser ,新浪微博,picture, pictureBrowser, sina, weibo.
KSPhotoBrowser - A beautiful photo browser with interactive dismissal animation. 一个小而美的图片浏览器。
扫码
二维码,条形码相关内容
DYFCodeScanner - 一个二维码/条形码的扫码器,代码简洁高效。(A QR code and Barcode scanner for iOS. Its code is concise and efficient.)
MMScan - 一个简单的二维码以及条码扫描工具,使用Objective-C语言开发,有一套自定义的扫描动画以及界面,还包括生成二维码以及条码。
QRCode - 仿微信二维码扫描。
LBXScan - A barcode and qr code scanner (二维码、扫码、扫一扫、ZXing、ZBar、iOS系统AVFoundation扫码封装,扫码界面效果封装)。
swiftScan - A barcode and qr code scanner( 二维码 各种码识别,生成,界面效果)。
SGQRCode - The easy to use QRCode scan library for iOS【iOS 原生二维码生成与扫描 -> 高仿微信】。
EFQRCode - A better way to operate QR Code in Swift, support iOS, macOS, watchOS and tvOS.
JB_ZBarSDK_Demo - 通过ZBar SDK,实现IOS扫描、生成二维码的功能。
下拉刷新和上拉加载
MJRefresh - An easy way to use pull-to-refresh.
SDRefreshView - 简单易用的上拉和下拉刷新(多版本细节适配)。Pull To Refresh.
指示器
EasyShowView - 一款超级简单的展示工具,包括吐司指示器,loding加载框,空白页提示,alertview,actionsheet的定制。可任意定制自己想要的各种样式,自定义动画,显示样式等各种操作,使各种展示更加easy。
MBProgressHUD - MBProgressHUD + Customizations. http://www.bukovinski.com/
MBProgressHUD-JDragon - MBProgressHUD 封装。
JGProgressHUD - An elegant and simple progress HUD for iOS and tvOS, compatible with Swift and ObjC.
SVProgressHUD - A clean and lightweight progress HUD for your iOS and tvOS app.
MMMaterialDesignSpinner - An iOS activity spinner modeled after Google's Material Design Spinner.
SCSkypeActivityIndicatorView - Activity indicator view similar to the one seen in the Skype apps.
MDFlickrActivityIndicatorView - Flickr-like activity indicator view for iOS.
Toast
DYFToast - Fully imitating the Android toast, using chain programming, through point operation, it can achieve the properties settings and display of the toast, the code is concise and efficient.
Toast-Swift - 向UIView对象类添加Toast通知的Swift扩展。(Objective-C版)
XHToast - 简洁轻便提示工具,一行代码既可完成提示信息显示 - 支持自定义显示位置及停留时间。
iToast-iOS - iToast的ARC版本。
toast-notifications-ios - We at Guru software really love toast notifications available on android OS, so we've built a similar feature for the IOS enabled devices.
JFMinimalNotifications - An iOS UIView for presenting a minimalistic notification that doesn't block the UI and is highly configurable.
Menu和弹出视图
kxmenu - KxMenu is a vertical popup menu for using in iOS applications.
LCSlideMenu - A powerful and easy to use slider menu.
JMColumnMenu - 仿腾讯新闻、今日头条栏目管理。
WJPageManager - WJPageManager提供了可以快速完成项目中常见的标题栏以及对应的分页控制器创建与逻辑处理。
YNPageScrollViewController - 一个强大的PageScrollViewController滑动库。菜单多种样式选择,支持悬浮样式、导航条样式、顶部样式。
YNPageViewController - 特斯拉组件、QQ联系人布局、多页面嵌套滚动、悬停效果、美团、淘宝、京东、微博、腾讯新闻、网易新闻、今日头条等标题滚动视图。 (YNPageScrollViewController重构版)
LTScrollView - ScrollView嵌套ScrolloView(UITableView 、UICollectionView)解决方案, 支持OC / Swift.
MLMenu - 仿微信QQ右上角菜单功能。
JMDropMenu - 仿QQ、微信下拉菜单封装,支持自定义样式。
XYMenu - 简易集成的弹出菜单。
YCMenuView - a popup menu which can be highly customized. (一个可以根据关联点和关联视图弹出的菜单,类似QQ导航栏右侧菜单。可满足高度自定义需求。)
REMenu - Dropdown menu inspired by Vine.
PopMenu - PopMenu is pop animation menu inspired by Sina weibo / NetEase app.
SHESelectTable - 下拉选择的列表。
MMComboBox - A comboBox contained three kinds of style.
CustomPopoverView - 一款小巧灵活的自定义弹出视图, 可以做自定义AlertView、弹出窗口等等。A tiny and sweet custom popView (pop popup).
MMPopupView - A basic Pop-Up Kit allows you to easily create Pop-Up view. You can focus on the only view you want to show.Besides, it comes with 2 common Pop-Up view, MMAlertView & MMSheetView. You can easily use & customize it.
JianShuPopViewDemo - 简书、淘宝弹出效果动画demo。
UIAlertView-Blocks - A category for UIAlertView which allows you to use blocks to handle the pressed button events rather than implementing a delegate.
BAAlertController - UIAlertController 的分类,一个block 搞定系统 alert 和 actionSheet 的 iPhone 和 iPad 版本适配!
WebView和进度条
DYFProgressView - Super useful progress bar and web page progress bar, the operation is simple and easy to use.
NJKWebViewProgress - A progress interface library for UIWebView. Currently, UIWebView doesn't have official progress interface. You can implement progress bar for your in-app browser using this module.
BAWKWebView - 用分类封装 WKWebView,一行代码搞定 request、URL、URLString、本地 HTML文件、HTMLString等请求,一个 block 搞定 title、progress、currentURL、当前网页的高度等等。
YQLWebViewProgress - 网页进度条显示,WebViewProgress.
WYWebViewDemo - 进度条加载网页。
CHWebView - 简化UIWebView和WKWebView的API使用,在此基础上实现进度条和简单JS交互事件。
WKWebViewDemo - WKWebView实际使用中遇到的注意点,以及WKWebView和JavaScript交互。具体介绍请戳WKWebView使用及注意点(keng)。
XDProgressView - XDProgressView可以由你心情任意设置高度,也可在上面显示文字。
SDProgressView - Progress Indicator View. 简便美观的进度指示器。
动画
MGTrasitionPractice - 自定义转场练习。
pop - An extensible iOS and OS X animation library, useful for physics-based interactions.
PopAnimationDemo - 使用pop完成一些的动画效果。
CustomPopAnimation - Runtime实现自定义Pop手势动画。
CATransitionDemo - CATransition动画实现。
// 一些私有API, 有些效果在APPStore中是不能使用的,私有API如下:
NSString *const kCATransitionCube = @"cube";
NSString *const kCATransitionSuckEffect = @"suckEffect";
NSString *const kCATransitionOglFlip = @"oglFlip";
NSString *const kCATransitionRippleEffect = @"rippleEffect";
NSString *const kCATransitionPageCurl = @"pageCurl";
NSString *const kCATransitionPageUnCurl = @"pageUnCurl";
NSString *const kCATransitionCameraIrisHollowOpen = @"cameraIrisHollowOpen";
NSString *const kCATransitionCameraIrisHollowClose = @"cameraIrisHollowClose";
// 而下方这些可以放心使用:
// CAAnimation.h
// Common transition types.
CA_EXTERN NSString * const kCATransitionFade
__OSX_AVAILABLE_STARTING (__MAC_10_5, __IPHONE_2_0);
CA_EXTERN NSString * const kCATransitionMoveIn
__OSX_AVAILABLE_STARTING (__MAC_10_5, __IPHONE_2_0);
CA_EXTERN NSString * const kCATransitionPush
__OSX_AVAILABLE_STARTING (__MAC_10_5, __IPHONE_2_0);
CA_EXTERN NSString * const kCATransitionReveal
__OSX_AVAILABLE_STARTING (__MAC_10_5, __IPHONE_2_0);
iOSAnimation - 好玩的iOS动画。
iOS-Swift-Animation - iOS Swift动画框架。
选择器
- BRPickerView - 封装的是iOS中常用的选择器组件。高度封装,只需一句代码即可完成调用,使用比较灵活支持自定义主题颜色。选择器类型主要包括:日期选择器、时间选择器、地址选择器、自定义字符串选择器。
搜索
- PYSearch - An elegant search controller which replaces the UISearchController for iOS (iPhone & iPad) .
分享
ShareSDK-for-iOS - ShareSDK是一个完全免费的社会化分享组件,为移动端的iOS App提供社会化功能。(MobTech)
U-Share SDK - 帮助应用或游戏快速具备国内外多平台分享、第三方登录功能,SDK包小,集成成本低,平台覆盖全,并基于友盟+大数据,提供权威、实时的用户画像、分享回流等数据分析,助力产品开发与推广。(友盟)
TTOpenInAppActivity - TTOpenInAppActivity is a UIActivity subclass that provides an "Open In ..." action to a UIActivityViewController. TTOpenInAppActivity uses an UIDocumentInteractionController to present all Apps that can handle the document specified with by the activity items.
图片验证码
ZLSecurityCode - iOS-字符图片验证码。
MQVerCodeView - 类似图片验证码,点击可刷新。
YanZhengCode - 图片验证码和滑块验证码。
获取设备相关信息
iOS-getClientInfo - iOS中获取各种设备信息。
ZGInfoCollection - 获取iPhone相关信息以及网络状态等等。
广告
ZLAdvertDemo - 启动页加载广告。
SplashScreenADView - 启动图和开屏广告页,类似网易。可根据广告的有效时间显示或关闭广告页,以及定制广告页停留的时间。
LaunchAd - 启动页广告。
ADScrollView - 下载一张网页图片,无线滑动图片展示各种广告图片,点击某个广告图片做出相应的操作。
高仿项目及Demo
iOSProject - iOS project of collected some demos for iOS App. (Swift版)
ZFZhiHuDaily - 知乎日报swift版(精仿)。
YiYuanYunGou - 高仿一元云购IOS应用(高仿自一元云购安卓客户端)。
BingFenShiJia - 缤微纷购。
ifanr - 高仿 爱范儿。
meituan - 高仿美团iOS版,版本号5.7。截图链接:http://blog.csdn.net/l863784757/article/details/46912223
nuomi - 高仿百度糯米iOS版,版本号5.13.0。
U17 - 精仿有妖气漫画(Swift5)。
MobileProject - 是一个以MVC模式搭建的开源功能集合,基于Objective-C上面进行编写,意在解决新项目对于常见功能模块的重复开发,MobileProject对于项目的搭建也进行很明确的划分,各个模块职责也比较明确,MobileProject也引入的一些常用第三方插件、宏定义、工具帮助类等;整个项目也是在不断更新跟维护中,功能点也会不断更新;代码支持iOS7以后版本。
WSLAPP - 音乐播放器,新闻,壁纸,画板,二维码,计分器,一个我自己做的完整的项目源码。
iOS_Demo - iOS开发中一些实用的Demo。
iOS-Project - 收集的一些比较好的iOS打样工程。
ZJKitTool - 快速添加UIKit控件可以结合Masonry,以及其他工具类的简单使用,评论列表、瀑布流、压缩图片、倒计时、筛选、自定义PickerView 时间日期选择器、性别选择器、WKWebView 的应用。
coolnameismy - blog - coolnameismy的技术博客文章对应的demo。
LiuAGeIOS - 六阿哥网iOS版,资讯类客户端。
MGSinaWeibo - 高仿新浪微博访客视图,首页,发布界面等 使用技术:MVVM设计模式,使用纯代码和Xib混合开发,使用SnapKit做UI布局,AFN网络数据请求,MJExtension进行字典转模型数据,使用SDWebImage进行图片加载,二维码的扫描和生成,图文混排,不等高cell的计算,表情键盘,图片上传和图片浏览器等技术。
MGBaisi - 高度仿写百思不得姐项目,实现精华,新帖,发布,关注,我的五大功能模块,运用了很多技术。 使用技术:MVC设计模式,使用纯代码和Xib混合开发,使用Masonry和AutoLayout做UI布局,首页精华模块充分使用父子控制器,音频视频的播放,集成系统自带新浪分享,评论详情界面,发布集成pop动画,关注界面充分利用Xib的优势,使用SDWebImage进行图片加载,MBProessHUD进行遮盖提示,清除缓存功能,UIWebView进行网页加载等技术。
MGDemo - 涉及导航栏随着tableView滑动是否隐藏,随着tableView的滑动让TabBar隐藏,停止滑动显示TabBar。还有NavigationController的titleView动态缩放效果,还加了UITableView分区展开与收起。后来又加了录制视频的功能和在相册中选择视频的功能。tableView的一些常用知识点,还有搜索框的使用。后来又整合了UICollectionView的使用,ShareSDK分享等。
MGLoveFreshBeen - 一款电商App,实现首页功能以及个人中心和分类,购物车模块。1.MVC设计模式 2.使用纯代码和Xib混合开发,使用Masonry和AutoLayout做UI布局;3.集成友盟分享 4.使用SDWebImage进行图片加载 5.SVProessHUD和MBProessHUD进行遮盖提示 6.UITableView的联动效果 7.首页UICollectionView进行数据显示 8.UIWebView加载网页等技术。
DBFMDemo - 豆瓣电台,一个豆瓣电台demo,可以选择播放顺序,可以通过选择频道获取歌曲数据,进行歌曲播放。
类目
JKCategories - JKCategories(iOS-Categories,Category), a collection of useful Objective-C Categories extending iOS Frameworks such as Foundation,UIKit,CoreData,QuartzCore,CoreLocation,MapKit Etc.
UIButtonEdgeInsets - 通过类别和继承方式实现按钮的图片和标题布局,调整 UIButton的imageEdgeInsets 和 titleEdgeInsets属性。
nsstring-extensions - This is a category for NSString that adds commonly used methods such as trim, urlEncode, urlDecode, parseIntWithDefaultValue.
越狱检测
- iOS Jailbreak Detector - A drop-in class that dynamically detects whether the iOS device your app is running on has been jailbroken or not. 100% App Store Submission Safe. No Private API.
Others
Sensor
- SensorDemo - 指纹识别、运动传感器、加速计、环境光感、距离传感器、指南针、陀螺仪等传感器示例集锦。
Privacy
- BAPrivacyManager - iOS 所有隐私权限封装,定位、蓝牙、通知、运动、日历、相册、相机等 14 种权限封装!
未归类
MSWeakTimer - Thread-safe NSTimer alternative that doesn't retain the target and supports being used with GCD queues.
NNMacros - NNMacros通过宏的方式来简化iOS开发中OC的语法和Api的操作。
Ono - A sensible way to deal with XML & HTML for iOS & macOS.
NSString-URLEncode - Category that adds URLEncode and URLDecode to NSString.
-
EasyIOS - A new generation of development framework based on Model-View-ViewModel.
- EasyRSS - A rss reader for ios based on easyios.
BEMCheckBox - 一个可以很容易地为iOS创建漂亮的、高度可定制的动画复选框。
YXCollectionView - UICollection学习总结以及案例集合。
NJKScrollFullScreen - Scroll to full screen like Facebook app.
ScrollShowHeaderDemo - 上下滑动列表时展现和隐藏顶部视图的demo。
HYBSnapkitAutoCellHeight - 基于SnapKit写的自动计算cell的高度的扩展。
timeLineiOS - DropIn TimeLine with progress animatiom.
MGCollectionView - 环形图片排布以及花瓣形排布。
SCIndexView - SCIndexView provide a index view like Wechat.
HotOrConcernCityListChoose - 添加热门城市和关注城市。
RTLabel - Rich text formatting based on HTML-like markups for iOS.
UICountingLabel - Adds animated counting support to UILabel.
TKPhoneformat - 一款输入手机号码格式的控件。
CopyLabel - iOS拥有复制功能的Label。
LYThemeChange - 主题更换。
iOS-Swift-UI - iOS-Swift-UI.
jiaModuleDemo - 一个针对iOS模块化开发的解决方案。
DraggingSort - 长按拖拽排序。
RSSliderView - Custom slider based on UIView for iOS.
JMMarkSlider - Fully customizable slider that allows you to set marks on it. You can set the color of the bar, marks and handler, the width of the marks and even an image for the handler.
ZZHotKeysMenu - ZZHotKeysMenu自定义布局,继承自UICollectionViewLayout。
corelib - iOS常用封装类库。
LDNetDiagnoService_IOS - iOS平台利用ping和traceroute的原理,对指定域名(通常为后台API的提供域名)进行网络诊断,并收集诊断日志。
TOSMBClient - A small library that serves as a simple SMB (Server Message Block ) client for iOS apps. The library allows connecting to SMB devices, downloading file metadata, and subsequently allows asynchronous downloading of files from an SMB device straight to an iOS device. It is an Objective-C wrapper around Defective SMb, or libDSM, a low level SMB client library built in C built by some of VideoLabs' developers. A copy of libDSM has been specially cross-compiled for iOS device architectures and embedded in this library, so this project has no external dependencies.
SimulateIDFA - iOS10 IDFA AD tracking limit solution.
model-identifiers - Apple model identifiers. Gives you an approximation of the device based on the model identifier.
iOSTips - 记录iOS开发中的一些知识点、小技巧。
EGOImageLoading - What if images on the iPhone were as easy as HTML?
EGOCache - Fast Caching for Objective-C (iPhone & Mac Compatible).
UncaughtExceptionHandler - 一个iOS崩溃异常的捕捉处理源代码,帮助更好的调试程序。
SPUncaughtExceptionHandler - APP闪退时,由用户决定是否继续。
Mac
dSYMTools - dSYM analyze.
IPAPkgTool - 一款自动化打包ipa的MacOS应用。(A MacOS application that packs ipa automatically.)
ios-app-signer - This is an app for OS X that can (re)sign apps and bundle them into ipa files that are ready to be installed on an iOS device. (Instructions)
iReSign - ReSign allows iDevice app bundles (.ipa) files to be signed or resigned with a digital certificate from Apple for disibution. This tool is aimed at enterprises users, for enterprise deployment, when the person signing the app is different than the person(s) developing it.
EasyResigny - A Mac tool for user to resign iOS App.
Resign - OSX utility to resign the IPA files.
iOS-Images-Extractor - A Mac app to decode and extract images from iOS apps, support png/jpg/ipa/Assets.car files.
cartool - Export images from OS X / iOS .car CoreUI archives. Very rough code, probably tons wrong with it, but still useful.
Pusic - An audio player for Mac.
My12306Cocoa - 12036自动订票max ox版。
12306Client - 12306Client.
AYProgressBar - Customized NSProgressIndicator. Basically its just two-colored line with active color and passive color.
GRProgressIndicator - reimplementation of NSProgressIndicator with some customization support.
VVDocumenter - Xcode plug-in which helps you write documentation comment easier, for both Objective-C and Swift.
ESJsonFormat-Xcode - 将JSON格式化输出为模型的属性。
KSImageNamed-Xcode - Xcode plug-in that provides autocomplete for imageNamed: calls.
XAlign - An amazing Xcode Source Editor extension to align regular code. It can align Xnything in any way you want.
FirTools - 一个 swift 写的 OS X 的Menu Bar 程序。
其他汇总
iOS代码库 - Code4App - Code4App是一个移动平台的代码库,是iOS开发好帮手。
iOS代码库 - cocoachina - 国内最热门的iOS社区的代码库。
iOS代码库 - 开源软件 - OSCHINA - OSCHINA 是目前领先的中文开源技术社区。Visit at https://www.oschina.net.
ios-mac-study - iOS及Mac开源项目和学习资料【超级全面】 · 看云。
awesome-ios - A curated list of awesome iOS ecosystem, including Objective-C and Swift Projects.
arodung-blog - Github上最全的iOS开源项目分类汇总。
awesome-objc-frameworks - 【OC框架排名列表 】A curated list of awesome Objective-C frameworks.
trip-to-iOS - A curated list of delightful iOS resources.
GitHub Top 100 简介 - 主要对当前 GitHub 排名前 100 的项目做一个简单的简介, 方便初学者快速了解到当前 Objective-C 在 GitHub 的情况。
区块链
比特币、以太坊、区块链相关内容
-
go-ethereum - 以太坊协议的官方的Go语言实现。
- Download Geth - Binary archives are published.
web3swift - Elegant Web3js functionality in Swift. Native ABI parsing and smart contract interactions on Ethereum network (web3.swift-Example - Example on how to use web3.swift).
web3j - web3j is a lightweight, highly modular, reactive, type safe Java and Android library for working with Smart Contracts and integrating with clients (nodes) on the Ethereum network.
py-geth - Python wrapping for running Go-Ethereum as a subprocess.
EthersWallet-ios - Ethereum Wallet and Dapp Browser for iOS.
breadwallet-ios - Bread is the best way to get started with bitcoin.
dashwallet - Dashwallet (breadwallet fork) is a real standalone Dash client.
imToken - ETHWallet.
ethers.io - The frontend website HTML, JavaScript and CSS for ethers.io.
ethers.objc - Fast, simple and complete library for Ethereum in Objective-C.
Flutter
Flutter和Dart
Flutter SDK releases - The Stable channel contains the most stable Flutter builds. See Flutter’s channels for details.
Flutter Samples - A collection of Flutter examples and demos.
Dart packages - Find and use packages to build Dart↗ and Flutter↗ apps.
Dart API docs - The API reference herein covers all libraries that are exported by the Flutter SDK.
-
简单Dart示例 · Dart2 中文文档 · 看云 - Dart2 语法、特性的讲解以及一些简单 Dart 示例参考。
- A tour of the Dart language - 英文原版参考。
DartPad - 使用 DartPad 来体验 Dart 语言的更多特性。
Flutter Project
dart_crypto -
DYFCryptoProvider
类封装了Base64, 32/16 Bits MD5, AES, RSA等算法,并提供了示例代码。grab_ethtoken_info - 从以太坊区块链 (Ethereum Blockchain) etherscan 上抓取任意一个钱包地址的所有token信息 (Address, Name, Balance, Symbol, Value),并编写界面进行展示。
flutter_study - Flutter基础,Dart基础,实践教学。
Weex
- Weex - A framework for building Mobile cross-platform UI.
platform | status |
---|---|
Android | [Package version] [weex_sdk] |
iOS | [Pod version] [Carthage] |
Mobile Web | [npm version] [weex-vue-render] |
Weex Community
- Mailing List Weex Mailing List, where most discussion happens.
- StackOverflow: Ask questions about Weex.
- SegmentFault (cn): 中文交流与讨论
- FAQ
- Articles (cn): Weex 相关文章集合
- Telegram Russian Community Group
H5
JavaScript 教程 | 菜鸟教程 - JavaScript 是 Web 的编程语言。所有现代的 HTML 页面都使用 JavaScript。
React 教程 | 菜鸟教程 - React 是一个用于构建用户界面的 JAVASCRIPT 库。React 主要用于构建UI,很多人认为 React 是 MVC 中的 V(视图)。React 起源于 Facebook 的内部项目,用来架设 Instagram 的网站,并于 2013 年 5 月开源。React 拥有较高的性能,代码逻辑非常简单,越来越多的人已开始关注和使用它。
小程序
微信公众号和小程序工具 - 推出了全新的微信开发者工具,集成了公众号网页调试和小程序调试两种开发模式。
【微信支付】JSAPI支付 - 在微信浏览器里面打开H5网页中执行JS调起支付。
游戏
Cocos2d
Cocos2d-x - Cocos2d-x is a suite of open-source, cross-platform, game-development tools used by millions of developers all over the world. http://www.cocos2d-x.org.
Unity
棋牌
qipai_algorithm - 棋牌的胡牌算法,包括麻将、跑胡子、扑克。实现 lua c++ c# golang js java python版本。
HuPaiMJ - C++麻将胡牌算法。优点:1.速度快,900万次多赖子胡牌用时500ms左右;2.支持多个赖子;3.查错方便,直接查表就可知道。
游戏示例
Hardest - 史上最困难的游戏-By Objective-C。
C-plus-plus
jsoncpp - A C++ library for interacting with JSON.
Bitcoin - Bitcoin is an experimental digital currency that enables instant payments to anyone, anywhere in the world. Bitcoin uses peer-to-peer technology to operate with no central authority: managing transactions and issuing money are carried out collectively by the network. Bitcoin Core is the name of open source software which enables the use of this currency. For more information, as well as an immediately usable, binary version of the Bitcoin Core software, see https://bitcoincore.org/en/download/, or read the original whitepaper.
Apache Mesos - Apache Mesos is a cluster manager that provides efficient resource isolation and sharing across distributed applications, or frameworks. It can run Hadoop, Jenkins, Spark, Aurora, and other frameworks on a dynamically shared pool of nodes. Visit us at mesos.apache.org.
DOOM-3 - Doom 3 GPL source release.
opencv - Open Source Computer Vision Library. Visist at https://opencv.org
GameNetworkingSockets - Reliable & unreliable messages over UDP. Robust message fragmentation & reassembly. Encryption.
Game-Networking-Resources - Game networking is a subset of computer networking that commonly covers transport protocols, data replication, entity synchronization, lag compensation, client-side prediction, server reconciliation, interest management, bandwidth optimization, physics rollback/fastforward simulation, anti-cheating and many other areas involved in multiplayer online game development.
Script
Mix
- Script - 编写了 iOS 自动化打包脚本,编写和收集 Shell, Python, Ruby 等一些实用脚本。(Writes automated packaging scripts for iOS, writes and collects some useful scripts about Shell, Python, Ruby, etc.)
Shell
dgynfi - Shell - Some shell tools for iOS or Mac.
FFmpeg-iOS-build-script - Shell script to build FFmpeg for iOS.
Python
SpoofMAC - Change your MAC address for debugging. http://feross.org/spoofmac/
xlrd - Library for developers to extract data from Microsoft Excel (tm) spreadsheet files. python-excel
xlwt - Library to create spreadsheet files compatible with MS Excel 97/2000/XP/2003 XLS files, on any platform. python-excel
jdcal - Julian dates, stored as two numbers, from proleptic Gregorian and Julian calendars.
最后
附上开源项目地址,觉得还行呢,麻烦顺手给个star
。喜欢程序开发的小伙伴,希望能够解决你的一些问题。即使不能,也希望能给你提供一些思路。
项目地址 =>【https://github.com/dgynfi/OpenSource】
点赞+关注,第一时间获取技术干货和最新知识点,谢谢你的支持!
最后祝大家生活愉快~