资讯专栏INFORMATION COLUMN

EZ Share 的一些经验

call_me_R / 2239人阅读

摘要:原生部分其实很简单,就是接入微信的分享微信。想吐槽一下的是的微信接入有点小麻烦,哈哈一定要确保包名,签名证书正确才能发送。

简介
EZ Share是什么:EZ Share是由四位阿里应届生私下自己做的一款APP,专门为一些闷骚的微信(我问过我们部门的同事,来往没对外提供接口,所以无法做)用户提供服务,根据用户的心情来匹配一些装逼的图片,并能把文字合理编排并融入装逼的图片,显得更有逼格。

系统架构
因为功能比较简单,所以系统的复杂度也比较简单。主要分为两部分:phonegap,原生Android/IOS,如下图所示。

phonegap部分除了提供界面和APP的交互之外,还有一个很重要的功能,就是使用canvas对图片的处理,把文字融入图片里面。可能你会奇怪为啥要这样做?因为用原生来处理的话虽然性能不错,但Android和IOS都需要各写一份代码,而且原生对图片的处理比较麻烦。
Android/IOS原生部分其实很简单,就是接入微信的SDK分享微信。
phonegap和原生之间的通信我的做法是在原生部分建立一个socket server,通过socket通信。

phonegap部分技术细节
3.1 phonegap调试
我觉得phonegap的调试比较麻烦,我是采用weinre进行远程调试,其原理如下图:

配置步骤:(小心细节,我因为一些细节问题折腾了几个小时)
【1】 使用npm安装weinre
2 启动weinre
3 注入一份js到index.html当中(在虚拟机中特别注意,千万别写localhost或者127.0.0.1,不然的话就会向虚拟机本身请求)
【4】 记得在config.xml添加访问的权限
3.2 canvas处理图片
如下图所示,这个部分主要是分为3个canvas层:

【1】第一层:主要是渲染图片的背景
【2】第二层:主要是渲染一些纯色背景并且根据用户的输入的文字渲染上去,并监听输入框的焦点事件,当失去焦点的时候,就会把文字重绘到第二层canvas上
【3】第三层:这个canvas的display是hidden的,当用户确定发送的时候,就会将第一层和第二层的canvas的内容渲染到第三层并生成一张图片储存到sd卡里面

原生Android部分技术细节
其实就是接入微信sdk,当接收到phonegap发来的信息就发送到微信,现在我做了Android,因为太穷了,没有一台ios设备,大概等毕业之后回去入职的时候再买吧,^_^ 反正原生的代码不多,应该也很快。
想吐槽一下的是android的微信sdk接入有点小麻烦,哈哈!一定要确保包名,签名证书正确才能发送。我也搜到一些资料有些人为了方便可以绕过微信的sdk直接唤醒微信的分享的activity,我猜他们的做法也是查看微信sdk包里面的源码再略加修改!

效果图

因为咱们EZ团队还在学校度假中,各个都忙着毕业和旅游,所以还需要一点点时间才能推出,哈哈,装逼神器你绝对值得拥有!

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/15582.html

相关文章

  • EZ Share 一些经验

    摘要:原生部分其实很简单,就是接入微信的分享微信。想吐槽一下的是的微信接入有点小麻烦,哈哈一定要确保包名,签名证书正确才能发送。 简介 EZ Share是什么:EZ Share是由四位阿里应届生私下自己做的一款APP,专门为一些闷骚的微信(我问过我们部门的同事,来往没对外提供接口,所以无法做)用户提供服务,根据用户的心情来匹配一些装逼的图片,并能把文字合理编排并融入装逼的图片,显得更有逼格...

    chavesgu 评论0 收藏0
  • 设计模式之单例模式

    摘要:代码分析构造函数私有化,防止外部直接调用构造函数通过改静态方法获取单例对象这是典型的懒汉式单例方法,低并发的情况下不会出现问题,若系统压力增大,并发量增加将有非常大的可能创建多个实例。 前言 终于到周末了,又玩起了最爱的lol,最近新版本出了一个特别的天赋--偷钱(具体名字想不起来了),配上ez简直是吊炸天,我玩的单排,仅用了不到三十分钟就杀的对面出不了家,正当我看着伤害板沾沾自喜,对...

    mikasa 评论0 收藏0
  • Python视频编辑库:MoviePy

    摘要:是一个关于视频编辑的库,主要包括剪辑嵌入拼接标题插入视频合成又名非线性编辑视频处理,和自定制效果。可以看中的一些实例来了解用法。可以读写所有的音频和视频格式,包括,通过和可以跨平台运行于下面是一个在的运行实例。 MoviePy MoviePy是一个关于视频编辑的python库,主要包括:剪辑,嵌入拼接,标题插入,视频合成(又名非线性编辑),视频处理,和自定制效果。可以看gallery中...

    NicolasHe 评论0 收藏0
  • Share and Find 系列沙龙之 PHP 专场 No.1

    摘要:覃健翔让我们在看待开发大型项目的视角上有了新的思路,比如如何合理利用外包,如何降低开发维护成本,以及如何享受编程。 关于之前系列活动的更多内容移步 Share and Find Wiki。 上个周六,我们「Share and Find 系列沙龙之 PHP 专场 No.1」在 又拍云存储 的特别支持下顺利完成。本着做不一样的沙龙,Share and Find,让每个人都能有所收获的初衷,...

    yiliang 评论0 收藏0
  • CENTOS 6.5 安装 Python 2.7 总结

    摘要:系列默认安装的,目前开发中主要是使用,这两个版本之间还是有不少差异的,程序在下经常会出问题。所以,打算安装来运行应用程序,但不能删除,因为系统对它有依赖。安装这里需要注意,一定要使用来执行相关命令。 CENTOS 6.X 系列默认安装的 Python 2.6 ,目前开发中主要是使用 Python 2.7 ,这两个版本之间还是有不少差异的,程序在 Python 2.6 下经常会出问题。 ...

    0x584a 评论0 收藏0

发表评论

0条评论

call_me_R

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<