WEBHOOK是一种系统通知的形式,在达到特定条件时系统自动触发网络请求。 可以理解为服务端系统中的跨设备回调函数。

手头有很多个项目在同时运作维护,核心的框架也不断在升级和修复。 刚开始的时候项目很少,基本上就是通过sublimetext的SFTP直接手动上传,现在随着需要维护的项目增多,每次做更新和上传的时候都会出现版本间的不同步,部署的繁琐,不能做到增量更新,更新效率比较差。

现在研究一下使用webhook来做到自动部署。目前的代码库托管在gitee码云。

注!我这里的主要需求主要是核心库分布式的增量更新,所以主要是包更新,一次更新通知多个服务器进行同步,不是一个整站代码的更新,当然整站上传也可以采用这样的方式,有的时候使用ftp来处理网站更新也不坏。

- 阅读剩余部分 -

Android WebView不能加载ajax?加载ajax无效?

!苹果或高版本的安卓webview可能会有跨域被拦截的问题,需要在服务端允许跨域。 另外高版本的webview注意使用HTTPS协议的请求,普通http将会被拦截 php示例代码:

header('content-type:application:json;charset=utf8');
header('Access-Control-Allow-Origin:*'); // 被允许的访问来源
header('Access-Control-Allow-Methods:POST');
header('Access-Control-Allow-Headers:x-requested-with,content-type');

1、WebView的支持js是否打开; webSettings.setJavaScriptEnabled(true);

2、webView拓展的api是否打开: webSettings.setDomStorageEnabled(true);

- 阅读剩余部分 -

安卓webview在某些版本使用location.href时会闪退。 主要问题是

通过window.location.href来重定向的,安卓不会正确触发shouldOverrideUrlLoading。

这个时候需要重写shouldOverrideUrlLoading

webView.setWebViewClient( new WebViewClient(){
 @Override
  public boolean shouldOverrideUrlLoading( WebView view, String url ){
   if(url!=""){
    view.loadUrl(url);
   }
   return true;
  }
});

最近在调试一个通过webview打开本地html的页面。 出现了: 404 Not Found The resource could not be found

用到了chrome的inspect调试,虽然在chrome://inspect 中可以看到设备,但是点击inspect却始终显示的是空白或者404。 这个时候无论我是否开启VPN,或者在webview中写入各种设置均不起作用。 一度怀疑是手机的webview框架有问题,甚至想过替换webview的方案。 但是手机同时安装的chrome浏览器,qq浏览器都可以正常调试,这是我对比了一下chrome浏览器和webview的核心版本 其中 chrome : 71.0 WebView: 51.0

在开启vpn后chrome浏览器的页面已经可以正常调试了,但是回到webview调试依然白屏。 这时我推测是两个浏览器内核之间已经不能进行有效的对接、或者谷歌服务器中没有对应的版本文件来下载,导致调试器界面无法显示。 随后我大胆的在网上下载 chrome 51.0版本,卸载了本机76.0版本进行安装。

使用51.0版本的chrome进行webview调试,成功!

- 阅读剩余部分 -

接近14年底的时候我刚从西藏和尼泊尔回来,那时候我一直在筹划一个好课网的 互联网学习平台,在淘宝上做了0.5套 高水平的ps课程,那个时候我自己有点隐忧,觉得自己内心并没有充满了信心,其实就是感觉还没到。

那个时候想到一些点子,想做一些爆款小游戏,比如说我之前跟你提到过的 摇手机打boss 那个概念,因为我希望可以先做点小游戏做些流水出来,之后再考虑做大,做纯互联网的公司,因为互联网太难做了,需要把盘子做很大,而前期发展又非常耗钱,并且我找过一些程序的朋友,他们都委婉的拒绝了,或者答应了又没音信了,找了一些做过ios游戏的朋友,也给的是冷水。 而刚刚好这个时候,soki的一个朋友小艾 ,突然问我 在做什么等等并且拉我出来聊,soki这个游戏创业的事情。

我首先认为我是做设计的,做游戏美术并不擅长,并且带上了我认为我能做和不能做的部分,比如说那种超级写实,中世纪,超级立体等等,我说我做不了,但是我可以做各种酷炫,设计感好的游戏。 他当时看了看和我强调他很看重游戏的UI设计等等,可能也是因为他一贯在互联网公司的原因,我们聊的比较来,我们都比较认同剑走偏锋这样的价值观。 所以我就觉得这个事情可以做,当时他跟我谈过所谓的待遇或者未来可能有的报酬 大约什么一年30多万吧,股权15% 这样。我当时其实没太感冒,我是直接告诉他 可以先开始合作一段时间,就这样一直给他免费干到第二年看到你。 这个部分有几个点:

  1. 我觉得soki和我的大方向比较吻合,而且他在钱这个问题上,比我更有注意力,因为我一直觉得自己的软肋是财务方面,所以我觉得如果和他一起创业,至少可以让我在这方面得到进步。
  2. 我不够自信,不觉得自己做公司可以成功。
  3. 做好课网遇到压力和瓶颈,有一些想要逃避
  4. 对于当初那些泼冷水和不认可我做小游戏的人,我刚好这个机会可以证明自己 (为了创业而创业)。

- 阅读剩余部分 -

Mac OS安装开源爬虫框架pyspider

一、pyspider介绍 pyspider是百度的大神binux用Python做的一个爬虫架构的开源化实现,主要的功能需求是: 抓取、更新调度多站点的特定的页面 需要对页面进行结构化信息提取 灵活可扩展,稳定可监控 二、pyspider安装 1、安装pip(如果未安装)

sudo easy_install pip

2、安装pyspider

pip install pyspider 注意:安装的过程中可能会抛错:pyspider fatal error: ''libxml/xmlversion.h'' file not found

这个只要先安装Command Line Tools 就行了


osx 11 安装了 Xcode command line tools 依旧不行,百度了一些做法都解决不了

新的OSX10.11.5, 安装lxml库,可以用下面的命令:

  1. 安装brew:

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

  2. 安装lxml:

    brew install libxml2 brew install libxslt brew link libxml2 --force brew link libxslt --force 3. pip install lxml 4. pip install scrapy

---- 用了这个知乎的方法依然不行

STATIC_DEPS=true sudo pip install lxml

三、运行

pyspider 完成之后访问 http://localhost:5000

Services: User Interface & Icon Design Clients: Kugou Music Date: 2016.07-2016.7 Links: Personal Practice

kugou-t.jpg

很长时间没有用过酷狗音乐了,可能是因为上了年纪,觉得酷狗已经跟不上潮流,整体设计以及曲库很LOW,但回想青葱岁月的时候,还是能够清晰的听到那声:Hello~Kugou~ 给自己定了一个小课题, 酷狗不酷?不对市场策略以及用户喜好负责,同时也并非是一个完整意义上的创新概念设计,而是基于一个问题去解决的设计方案,所以保留了大部分酷狗已有的元素。

- 阅读剩余部分 -

客户: LuciolaGames 技能: 动效设计,UI设计,视觉设计,LOGO设计 时间:2015.06-2015.9 链接:Appstore 商用作品(请勿盗用) 201505stutter-display-t.jpg Stutter Rapper is our first game in AppStore. Story Details:

Stutter Needs Help! Deep in the ocean, Stutter the whale’s adoptive-parents have been trapped, and are soon to be tin-canned! Stutter and his best DJ buddy, now have to join the "Rookie Rapper” Competition and need to win the biggest prize to free them. It’s an exciting adventure of rescue, overcoming obstacles and helping the little whale grow from a Stutter to a Rapper!Rap by Connecting the Letters! Your goal is to link letters in adjacent tiles to make a correct word for Stutter to rap it out. Accurate timing with the DJ’s rhythm will get you a higher score! With sharp eyes, even a Stutter can Rap & Rock the ocean!Fight For the Best! Will the little Stutter bring his guardians back home? What will happen in his adventure of growing into a great Rapper? Polish your word-spotting skills, keep exploring and unveil this story!

- 阅读剩余部分 -

客户: Xteacher Team 技能: 视觉设计 时间:2015.10-2015.10 链接: 商用作品(请勿盗用)

这是为Xteacher团队设计的应用界面,当然了包括ICON Xteacher是一款面向高中生的在线教育APP,在和客户沟通的时候我们定义他是一个科学的、丰富多彩以及温暖的应用。 在设计ICON的时候,我将各个学科中的一些代表性图形融入到X中,用来表达该应用的工具型属性,同时采用了柠檬黄这样年轻有朝气的颜色作为主色。 这款应用的界面没有过多的创新设计,主要是在视频缩略图上我添加了一个色彩蒙板,用处主要有: 1.能够通过色彩快速识别对应课程的类型是文科还是理科 2.弥补后期运营时图片质量不好的时候视觉上的低质感 同时还在一些交互的按钮上略微添加了一些厚度和质感,让应用显得更加有层次一些,同时也增加了亲和力,画面更生动。 当然这些属于一种尝试项,也和客户经过商讨。 在设计这款应用的时候,也出于自己对应用和体验的理解向客户提出过一些善意的疑问和建议,经过一些沟通后,对方还是采纳了不少改进意见,整体的合作过程都很愉快。 如:把原本收在设置界面里的签到按钮单拉出来,放到个人主页导航栏上方,方便用户每次打开个人主页就可以快速签到。 也改善了 用户-签到-积分商城的流转循环。 将loading页的注册登录按钮省去,放到设置页的头像触发,相当于默认让用户可以用游客身份进入,之后需要的时候再进行登录。 用户头像底部背景图片根据文理科的选择分别可以是 蓝色-理科、橙色-文科、绿色-未分文理。 把注册引导和邀请码作为分开步骤来做,这样每一步的时候选项更少更清晰。 最后因为对方临时改了应用名为 高考好提分,同时又没有留出足够的ICON和启动页调整时间,所以启动页仍然沿用了XTeacher的原版,凑合的放上去了一个中文文字,对此比较遗憾。