VanJay's Blog

一个爱折腾工程师的全栈梦

背景

来到新公司也有一个月了,完成 iOS 端洞客项目V1.3.0-V1.4.0的升级,虽然只是一个小版本的升级,但我在熟悉项目过程当中发现项目垃圾代码实在太多了,别说我了,一般的接锅人看了也难以忍受,在痛苦了几天之后我默默拉了一个新 git 分支改起来,使用 clang format规范化了整个项目的代码,后面结合git hookgit commit前自动reformat代码,这一步可以说是非常爽了。直到今天,我之前简单看了一下,check out到我改之前和改之后的代码,少了有5000+行代码,删除了几十个类文件,但里面还是充斥着大量的垃圾或者不合理的代码。开发完1.4.0,稍微看起来闲了一两天,被个喜欢行使小权利的前端小组长安装研习 React Native,准备接入原生项目,暂时用于替换一个改动比较频繁的详情页,之前就有自己学习过,但是都忘光了,又复习一遍,趁热记录一些小 tip。

阅读全文 »

基本要求

  • Cocoapods 使用熟悉
  • 熟悉 Mac 基本操作
  • 解决问题的基本功

官方示例

这是官方给出的教程,集成到现有原生应用,按照这个集成的跑起来没啥问题,但是后期等你用了一些组件,或原生或 RN 的,比如自定义 UIViewRN 用,RN 里用的第三方的 component 调用了原生的 API,官方的这些默认的 pod 库就是缺少一些的,跑项目会出一些莫名其妙的问题,我在用了react-navigation后各种运行时红屏报错问题,错误提示也看不出个所以然来,折腾好久才解决问题,这里我将直接记录主要过程和注意点,以备不时之需。

阅读全文 »

介绍

block实际上就是Objective-C语言对于闭包的实现。
block配合上dispatch_queue,可以方便地实现简单的多线程编程和异步编程。
(闭包是一个函数(或指向函数的指针),再加上该函数执行的外部的上下文变量(有时候也称作自由变量)。)

阅读全文 »

前言

随着互联网的快速发展,有时我们需要一个能快速、稳定且安全地存取和分享文件的在线服务。可能你是一个开发者,需要分享你的代码库;也可能你是一名摄影师,想要分享你的作品;或者你只是希望能在不同设备之间方便地存取文件。无论哪种情况,一个Web文件服务都可以满足你的需求。

阅读全文 »

前言

不能畅游墙外没法好好生活和工作

本来手里有着五六个 Shadowsocks 帐号,但体验都不佳,一直也没怎么用,是因为一直使用公司搭建的 Cisco Anyconnect,科学上网后百兆带宽可以满速使用,速度虽快,但是客户端软件默认是全局代理的,虽然可以走IP route list达到和Shadowsocks PAC同样的作用,但效果慎微,而且IP要自己去填,所以公司IT直接没搞这个route list,因为我们大部分电脑和手机APP都在墙内,这就导致在使用了Cisco Anyconnect后大部分电脑或者手机上的APP网络访问困难,常开VPN还是需要Shadowsocks 等可根据 PAC清单自动代理 或者 分应用代理 的一类软件。

阅读全文 »

经过了一个多月,加班加点,总算完成基本完成了这个Wap APP,可以作为 Version one 面见客户了,感受不多。

MUI 结合 Hbuilder 使用 HTML5+ 开发APP整体来说还是挺顺畅的,虽然文档不完整,但是有开发经验的一眼看过去就知道怎么用了,以后做些不是大型的APP或许会成为我的首选。

阅读全文 »

MUI 官方的 Demo 的加载 webview 选项卡的逻辑是一次创建全部的选项卡,只默认显示默认创建的页面,这个页面逻辑没必要这么复杂,扩展性也不强,修改一处多处要修改,我做了简单修改,直接修改数据源,就可以达到更改全部的效果。

直接上全部代码

阅读全文 »

主动选择 select 中的 option

// 获取默认type
var defaultType = '1';
var typeSelect = document.getElementById("type");
for(var i = 0; i < typeSelect.options.length; i++) {
	if(typeSelect.options[i].value === defaultType) {
		typeSelect.selectedIndex = i;
		break;
	}
}

背景

在我之前一篇文章里 iOS企业内部应用分发 讲述了 iOS 企业帐号打包的 ipa 分发,但是如果每次 ipa 更新,重新上传 *.ipa 后还要手动编辑 *.plist 的新的 ipaurl 和包的相关信息,这就和打包一样(使用 fastlane),是毫无技术含量但是花时间的事情,作为一个爱偷懒的人,我总是想利用自身所学或者一些工具来代替我做一些重复又没技术含量的事,在本文涉及的这件事里,显然,脚本要派上用场,最终选用了 Python 而没有用 Bash —- 从 ipa 读取相关信息并写入到目的 plistPython 只是业余,如您有建议或改进,欢迎留言评论指出,感激不尽!

阅读全文 »
0%