Cordova中与In App Browser的通讯

为了把我的练琴记录仪改成多用户App,我需要做一个Weibo OAuth功能,因为练琴记录仪是Single Page App,我不愿意直接跳转到OAuth页面,那样会打断我的应用状态,于是我打算打开一个新窗口来完成OAuth。

这样一来,问题自然就转换为跨窗口通讯问题了。

窗口间通讯毫无疑问首选是window.postMessage,在cordova当中,原生window.open是不能用的,官方给的方案是使用cordova-plugin-inappbrowser插件所提供的cordova.InAppBrowser.open(url, target, options)来取代window.open,这两者基本上API差不多一致。

但是IAB插件所返回的对象并不是真正的window,它没有postMessage功能,并且在IAB所打开的页面中,也没有window.opener,于是只能另辟蹊径,找点不靠谱的挫方法来试试了。

使用RxJS做一个Pull-to-Refresh的例子

本文将用一个Pull-to-Refresh的例子来介绍如何使用RxJS进行高度抽象的复杂DOM事件处理。

文中所开发的完整demo代码可以在github找到,在线demo在这里(需要使用手机或开启touch模拟,未作浏览器兼容)。

这个程序将会用到的工具:

  • RxJS
  • VueJS(并非对其依赖,仅仅是为了方便开发一个UI)

使用C#开发桌面hybrid应用程序

周末和基友一起开发了一个程序MP3CutAdgithub),用的是C#做容器和“后端”,webkit做UI。

因为后端的算法是用C#写的,就打算不迁移了,用C#做UI吧。但是我特么不会,距离上一次开发WinForm程序已经过去了5、6年;WPF也没有实践经验。所以就想弄个办法,用C#做后端,web做前端,赶个时髦。

《如龙0:誓约之地》简评

《如龙0:誓约之地》(港:人中之龙0:誓约的场所)是今年5月档期PS平台的一部大作,是《如龙》系列的前传,也是系列首次中文化。不过我直到最近才刚买,真是火星。除了前期有一段时间迷恋迪斯科飞镖棒球台球卡拉OK以外(怎么这么多),中后期基本上都在推主线。现在已通关,简评一下。

使用JavaScript实现“真·函数式编程”

其实这篇文章有点标题党了,因为函数式编程是一个非常大的课题。而标题里的“真”听起来就有一股浓浓的中二气息。

没错,这篇文章是函数式装逼系列(1)(2)的进阶版。函数式编程是很火的,然而现在网上很多入门级的JS函数式编程教程(甚至书)都太水了,以为用用forEach用用map用用reduce用用immutable就叫函数式编程了。

Too young. Too simple.

本着搞一个大新闻的目的,我又开了这个无底天坑。当然一切都是从学习与娱乐的目的出发(这两件事其实并不冲突嘛),请勿评论本文中代码的实用价值。

瑞迪?黑喂狗!