跳至主要内容

即时通讯常用第三方库

聊天列表



SWTableViewCell: https://github.com/CEWendel/SWTableViewCell.git

正常情况下隐藏右侧按钮的,向左滑动显示cell右侧的按钮(类似于iOS 7邮件应用程序)。微信应用:聊天列表向左滑动,显示标记未读,删除消息按钮。



文字消息



M80AttributedLabel: https://github.com/xiangwangfeng/M80AttributedLabel.git

文字内容的消息可以使用M80AttributedLabel,实现文字与表情的混排。一般使用气泡作为背景。

语音



VoiceConvert: http://code4app.com/ios/边录音边转码/521c65d56803fab864000001

iPhone设备录音为WAV格式,WAV格式文件太大,不便于传输。使用VoiceConvert可以将WAV转化为amr格式文件进行传输,文件大小被压缩到之前文件的10倍左右。当接受方接受消息后需将amr文件转化为WAV文件,进行播放。注:笔者实现语音功能时,使用的是VoiceConvert,而微信不是。

聊天文字输入框



HPGrowingTextView:https://github.com/yatinsns/HPGrowingTextView.git

聊天输入文字,可以根据输入文字的多少自动改变输入框的高度。

微信右上角的+点击展示列表效果



DXPopover:https://github.com/xiekw2010/DXPopover.git

感觉微信的效果点击+号,展示列表,使用的就是frame的缩小动画。笔者推荐的效果一定比微信的效果要好。

UUID、手势密码的存储



SSKeychain:https://github.com/soffes/sskeychain.git

使用keychain存储关键数据,eg:UUID、手势密码等。当刷机、升级系统或者卸载应用时,UUID或手势密码依旧还保存。苹果推荐使用KeychainItemWrapper,但实际开发中并不是很好。笔者建议使用SSKeychain,方便易用。

广告自动轮播



HYBLoopScrollView:https://github.com/CoderJackyHuang/HYBLoopScrollView.git

实现自动循环滚动,一般用于展示广告页。微信在贴纸宣传处就使用了轮播。

数据库



FMDB:https://github.com/ccgus/fmdb.git

FMDB如此强大,啥也不说了。

图片浏览器



MWPhotoBrowser:https://github.com/mwaterfall/MWPhotoBrowser.git

图片浏览器,微信朋友圈点击小图,查看大图的效果。

Tinder、探探等翻牌子



MDCSwipeToChooseView:https://github.com/modocache/MDCSwipeToChoose.git

Tinder、探探等翻牌子效果

刷新



MJRefresh:https://github.com/CoderMJLee/MJRefresh.git

MJRefresh有李明杰大神的开源之作,其他的自不用说。不过笔者根据基于MJRefresh重新定制了一个可以修改颜色的loading菊花(https://github.com/jiulin/MJRefresh.git)

网络



AFNetworking: https://github.com/AFNetworking/AFNetworking.git

原文链接:http://www.henishuo.com/im-common-control/

评论

此博客中的热门博文

非公开 app 分发

非公开 app  简介 app 除了不能搜索到该 app,其他使用和普通的应用商店一致。 只需要使用对应的链接就可以跳转到该 app 。 非公开 app 上传审核流程 1.appstore connect 新建应用,配置和普通上传应用商店(公开应用)完全一致 2.在备注里面加上一行:该 app 属于非公开 app,提交 app 3.去非公开 app 申请链接app 为非公开 app,https://developer.apple.com/contact/request/unlisted-app/ 4.审核被拒,有两部分,一个是普通appstore审核被拒(可能没有),最后还会多上一个非公开 app 审核被拒的部分。等待只有非公开 app 审核被拒的问题后,再等上两天左右就好了。 5.审核通过后,会通过邮件发送该 app 的链接,此链接其实和其他 app 的链接格式一致,并无区别,唯一的区别是该 app 在应用商店搜索不到。

非公开 app

 1.对用户 用户只能通过特定链接才能使用该 app,其他使用和应用商店 app 一致。 2.对开发 a,以应用商店提交 app 的标准方式提交 app,在备注添加一行,写上“App 将用于非公开分发”,提交 app。 b,  填写非公开 app 申请,https://developer.apple.com/contact/request/unlisted-app/ c,等待审核,整个审核过程会比平常审核慢 2-5 个工作日,后续更新应该会正常。 app分发类型 非公开app ABM App Store 企业包 app分发类型 非公开app ABM App Store 企业包 是否需要https, 自己搭建托管环境 否,文件托管到 App Store 否,文件托管到 App Store 否,文件托管到App Store 是,需要自己托管,需要 https 环境,受信任的 ssl证书 是否可以直接在 App Store 搜索到 否 否 是 否 是否可以在 App Store 展示 应用信息,包括 在应用信息页面 手动点击更新 是 否 是 不上传到App Store无 App Store信息 在应用商店 更新列表点击更新 是 是 是 否 是否需要手 动更新app 开启App Store的自动更新,就自动更新,否则手动更新 开启App Store的自动更新,就自动更新,否则手动更新,只能点我的头像,更新列表里面去更新 开启App Store的自动更新,就自动更新,否则手动更新 必须去 app 里面 点击更新,或者 去下载页面去 下载最新的app 包是否会过期 否,只要账号正常 否,只要账号正常 否,只要账号正常 是,包里面有 两个证书,虽 然只打包进一 个证书文件, 但那个证书文 件关联另一个, (打包的时候一 起使用)打包 的文件有效期1 年,关联的文 件有效期 3 年。打包的时候 是否允许马甲, 重复应用(相似 ui,相似代码) 是 是 否 是 应用商店审核要求 有,除了马甲应用,其他都一样 有,除了马甲应用,其他都一样 不允许马甲应用,其他都一样 不需要审核 是否能用其他 开发者账号上传 我们的定制版应用 未知 可以 不允许 无app store 应用上传权限 哪些版本可以 改成该版本 1.App Store包 2.企业包 1.企业包 1.企业包 ...

iOS企业包下载中的下载

 首先,链接格式是itms-services://?action=download-manifest&url=https://xxxx.plist plist文件格式是 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>items</key> <array> <dict> <key>assets</key> <array> <dict> <key>kind</key> <string>software-package</string> <key>url</key> <string>ipa的完整的url,可以是http的</string> </dict> <dict> <key>kind</key> <string>display-image</string> <key>url</key> <string>小图的完整的url,可以是http的</string> </dict> <dict> <key>kind</key> <string>full-size-image</string> <key>url</key...