微信Swift完整项目应用源码
TSWeChat 中文说明
运行环境
- Cocoapods 0.39.0 +
- iOS 8.0+ / Mac OS X 10.9+
- Xcode 7.2+
- 源码下载:http://code.662p.com/view/13219.html
预览
特色
- 可以发送富文本,表情,图片还有声音。
- [backcolor=rgba(0, 0, 0, 0.0351563)]TSChatImageCell 中显示的图片使用 [backcolor=rgba(0, 0, 0, 0.0351563)]Mask Layer 进行绘制,你可以自由的切换聊天背景图,这样看上去 UI 也不会糟糕。
- 自定义的表情键盘,自定义的工具键盘。
- 录音的 [backcolor=rgba(0, 0, 0, 0.0351563)]wav 文件会被自动转换成 [backcolor=rgba(0, 0, 0, 0.0351563)]amr文件,这样可以方便和 Android 设备进行文件传输。这两种文件都已做了缓存。上传使用 [backcolor=rgba(0, 0, 0, 0.0351563)]amr 文件,播放使用 [backcolor=rgba(0, 0, 0, 0.0351563)]wav 文件。
- 当你点击声音 [backcolor=rgba(0, 0, 0, 0.0351563)]TSChatVoiceCell 的时候,它会自动检测缓存,如果没有那么会使用 Alamofire 自动进行下载。
- 当你发送图片的时候,系统会使用 Kingfisher 缓存机制存放在本地,上传成功后会自动修改成图片链接的 [backcolor=rgba(0, 0, 0, 0.0351563)]MD5 值文件名字。
- 数据是从 [backcolor=rgba(0, 0, 0, 0.0351563)]JSON 文件里面加载来的, 所有的 [backcolor=rgba(0, 0, 0, 0.0351563)]Model 是使用 ObjectMapper 创建的。
文件目录[td]
目录名称 | 介绍 |
Classes | 主要存放项目中的不同业务的 [backcolor=rgba(0, 0, 0, 0.0351563)]ViewController,[backcolor=rgba(0, 0, 0, 0.0351563)]View ,[backcolor=rgba(0, 0, 0, 0.0351563)]Model 等文件,子文件夹按照业务逻辑划分。比如按照功能划分有 [backcolor=rgba(0, 0, 0, 0.0351563)]Message,[backcolor=rgba(0, 0, 0, 0.0351563)]Address Book,[backcolor=rgba(0, 0, 0, 0.0351563)]Time,[backcolor=rgba(0, 0, 0, 0.0351563)]Me,[backcolor=rgba(0, 0, 0, 0.0351563)]Login 子目录等 |
Classes/CoreModule | 主要存放一些基础类库的业务逻辑的封装,比如[backcolor=rgba(0, 0, 0, 0.0351563)]Network,[backcolor=rgba(0, 0, 0, 0.0351563)]Socket 引擎,[backcolor=rgba(0, 0, 0, 0.0351563)]Model文件夹等 |
General | 这个目录放会被重用的 Views/Classes 和 Categories,存放[backcolor=rgba(0, 0, 0, 0.0351563)]和业务逻辑相关的 [backcolor=rgba(0, 0, 0, 0.0351563)]class,比如颜色的分类, |
Helpers | 存放一些非业务逻辑的类或者 category |
Macro | 存放整个应用会用到的宏定义,常量名等,比如 [backcolor=rgba(0, 0, 0, 0.0351563)]Notifications名称,[backcolor=rgba(0, 0, 0, 0.0351563)]页面 title 名称,第三方库所使用的 key 等 |
Resources | 存放资源文件,包括[backcolor=rgba(0, 0, 0, 0.0351563)]Assets.xcassets,[backcolor=rgba(0, 0, 0, 0.0351563)]Media.xcassets,[backcolor=rgba(0, 0, 0, 0.0351563)]音频文件,[backcolor=rgba(0, 0, 0, 0.0351563)]plist 文件 等 |
Vendor | 存放一些第三方库,尽量使用[backcolor=rgba(0, 0, 0, 0.0351563)]cocoapods来管理,万不得已可以存放在这里 |
Supporting Files | 项目原有的目录 |
Scripts | APNs 测试脚本, 导出 IPA 文件的脚本目录,当然还有一些其他的,慢慢持续添加。 |
Sketch | 存放一些图片的 Sketch 源文件。项目工程中的所有资源文件都来自 微信的 IPA 文件夹, 但是有一些资源是没有的或者没有找到,于是我决定自己来做。体验一下当设计师的感觉,2333 |
详细说明:http://ios.662p.com/thread-2789-1-1.html
微信Swift完整项目应用源码的更多相关文章
- 电子商务系统+java+web+完整项目+包含源码和数据库Java实用源码
鸿鹄云商大型企业分布式互联网电子商务平台,推出PC+微信+APP+云服务的云商平台系统,其中包括B2B.B2C.C2C.O2O.新零售.直播电商等子平台. 分布式.微服务.云架构电子商务平台 java ...
- SSM完整项目(内含源码)
SSM 电影后台管理项目 概述 通过对数据库中一张表的CRUD,将相应的操作结果渲染到页面上. 笔者通过这篇博客还原了项目(当然有一些隐藏的坑),然后将该项目上传到了Github.Gitee,在末尾会 ...
- 【原】Android热更新开源项目Tinker源码解析系列之一:Dex热更新
[原]Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Tinker是微信的第一个开源项目,主要用于安卓应用bug的热修复和功能的迭代. Tinker github地址:http ...
- VopSdk一个高逼格微信公众号开发SDK(源码下载)
看之前回复很多说明大家很有热情&文章被误删掉了,不想让有的朋友错失这个高逼格的东西,现在重新发布,这次就直接放出源码,文章最末下载地址. 看之前回复很多说明大家很有热情&文章被误删掉了 ...
- 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新
本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...
- 【原】Android热更新开源项目Tinker源码解析系列之二:资源文件热更新
上一篇文章介绍了Dex文件的热更新流程,本文将会分析Tinker中对资源文件的热更新流程. 同Dex,资源文件的热更新同样包括三个部分:资源补丁生成,资源补丁合成及资源补丁加载. 本系列将从以下三个方 ...
- Maven自定义绑定插件目标:创建项目的源码jar
<build> <plugins> <!-- 自定义绑定,创建项目的源码jar --> <plugin> <groupId>org.apac ...
- Eclipse 关联项目的源码
Eclipse 关联项目的源码 1.jdk源码的关联: 一般jdk自带的类,显示其源码的方式: 用jdk自带的src.zip吧:我的JDK目录是:D:\Java\jdk1.6.0_10 , JRE目录 ...
- Visual Studio 2015开发Qt项目实战经验分享(附项目示例源码)
Visual Studio 2015开发Qt项目实战经验分享(附项目示例源码) 转 https://blog.csdn.net/lhl1124281072/article/details/800 ...
随机推荐
- node(ActiveMq)
简单尝试了node下的ActiveMQ 1.下载apache-activemq-5.9.0,执行bat文件: 2.登录http://localhost:8161/admin可查看其管理后台: 3.安装 ...
- C# 线程同步的三类情景
C# 已经提供了我们几种非常好用的类库如 BackgroundWorker.Thread.Task等,借助它们,我们就能够分分钟编写出一个多线程的应用程序. 比如这样一个需求:有一个 Winform ...
- CSS3 nth 伪类选择器
考察下面的 HTML 代码片段: <div> <section>section 1</section> <section>section 2</s ...
- fir.im Weekly - 聊聊 Google 开发者大会
中国互联网的三大错觉:索尼倒闭,诺基亚崛起,谷歌重返中国.12月8日,2016 Google 开发者大会正式发布了Google Developers 中国网站 ,包含了Android Develope ...
- python的print函数的格式化输出
使用print函数的时候,可以像C一样格式化输出,同时还支持参数化输出 print('%s' % ("CooMark")) print('整数|%d|' % (123)) prin ...
- 8.GitHub实战系列~8.使用GitHub建立自己的免费博客
github实战汇总:http://www.cnblogs.com/dunitian/p/5038719.html 创建一个用户名.github.io的仓库 选择设置页面风格 页面基本信息 选择一个你 ...
- [3D数学基础:图形与游戏开发]专栏前言
期待的书终于到了,接下来我会把自己的学习笔记以及心得整理出来,形成专栏,每一章都进行记录和学习总结,今天是2016年12月30日,再过一天就是元旦了,就要迎来美好的2017年了!!!加油~ 上面的书就 ...
- 计算机程序的思维逻辑 (33) - Joda-Time
Joda-Time上节介绍了JDK API中的日期和时间类,我们提到了JDK API的一些不足,并提到,实践中有一个广泛使用的日期和时间类库,Joda-Time,本节我们就来介绍Joda-Time.俗 ...
- 【Data Cluster】真机环境下MySQL数据库集群搭建
真机环境下MySQL-Cluster搭建文档 摘要:本年伊始阶段,由于实验室对不同数据库性能测试需求,才出现MySQL集群搭建.购置主机,交换机,双绞线等一系列准备工作就绪,也就开始集群搭建.起初笔 ...
- 原创:MD5 32位加密软件
网站后台数据库切勿使用明文保存密码,否则一旦黑客拿下你的Webshell,后果不堪设想. 网站后台密码加密大多数采用的就是MD5算法加密.今天给大家送一个本人用c#简单编写的MD5 32位加密程序,虽 ...