LiJiaHao' Blog

计算机爱好者的世界

Android电话监听功能开发及注意事项

前段时间接到一个需求,需要在公司内部办公APP启动后自动监听来电,根据来电号码通过HTTP请求查询号码对应的员工信息,并在系统界面上显示,这个需求看似简单,但在开发过程中还是遇到了不少问题,下面就本次功能开发中遇到的问题及注意事项进行记录。 1. 电话监听初始方案 首先就是解决电话监听问题,我们需要在电话响起的时候拿到来电号码,查了下发现Android就已经提供了PhoneStateLi...

关于Rom Hacking你可以了解到的一些事

游戏汉化技术点揭秘

说到Rom Hacking可能很多人都会觉得陌生,但相信很多人都有接触过Rom Hacking的产物,比如早年在GBA、NDS、PSP大放异彩的汉化游戏,就是一个典型的Rom Hacking的产物,游戏的汉化就是一个原汁原味的Rom Hacking应用,那么Rom Hacking到底是什么,Rom Hacking对汉化有什么作用,今天这篇文章将以寓教于乐的目的来揭开Rom Hacking的神...

macOS/Linux下maven环境及私有仓库配置折腾记

最近在接触公司内一个Maven项目需要配置公司内部的私有仓库,可以借此机会熟悉下Java开发大名鼎鼎的Maven,网上不少关于Maven的配置资料都是基于Windows环境,基于OSX和Linux的教程很少,因此在环境搭建及配置中也遇到不少问题,在成功搭建这个环境过程中也学到了不少东西,借此记录。 1. Maven安装及配置 下载Maven,将下载文件解压后得到的文件夹(apach...

从零开发一个微型Git

通过编码实战理解Git基本原理

​ Git是当今最流行的版本控制系统,git的分支切换、版本追溯等功能被大多程序员青睐,大家每天都会用git进行代码提交等工作,例如常见的git status、git add、git commit等操作,那么每次敲这些命令时,有没有想过这些命令的后面发生了什么?为了了解这些原理,你可以去查看git项目的完整源码,但是完整的源码实在是太多了,如果你想先从基础的原理进行了解,那么根本无从下手,...

开发者如何正确使用搜索引擎解决疑难杂症

教你正确使用搜索引擎对症下药

​ 身为开发者,在工作中难免会遇到各类各样的问题,比如某天本来运行良好的xcode突然报错xxx.h is not found、Android编译失败等问题都是很常见,但是不好解决,也是日常工作上最不想遇到的,那么遇到这类问题的时候该怎么解决呢,本文将介绍下自己平时使用的解决方法。 求助同事、朋友 ​ 遇到了问题,直接求助同事、朋友是最快的解决办法,也是很多刚开...

低版本react-native bundle拆包---iOS异步加载实践(三)

本文介绍iOS端下如何将拆分的jsbundle进行异步加载

本系列前两篇文章低版本react-native bundle拆包—jsbundle的拆解实践(一)、低版本react-native bundle拆包—Android异步加载实践(二)分别介绍了如何将React-native生产包拆分成基础包(common.jsbundle)和业务包(business.jsbundle)并在Android端进行业务包接入、分步加载jsbundle,本篇文章将介...

低版本react-native bundle拆包---Android异步加载实践(二)

本文介绍Android端下如何将拆分的jsbundle进行异步加载

在上一篇文章低版本react-native bundle拆包—jsbundle的拆解实践(一)已经介绍了如何通过修改react-native 0.55版本的metro实现模块ID固定并通过自定义脚本将业务代码抽离出来,从而得到基础包common.jsbundle和业务包business.jsbundle,本文将介绍如何在Android端进行改造,在原有react-native项目的基础下接入...

低版本react-native bundle拆包---jsbundle的拆解实践(一)

本文以0.55版本react-native为例,介绍拆包思路以及如何通过metro拆包

背景介绍 公司部分业务APP以react-native作为技术栈,且当前有一个完整的APP,不同的团队负责不同的业务开发,工作成果以子工程的形式加入到现有APP中,随着业务开发的迭代加快以及更多新的业务线的加入,子工程体积增加,进而主工程的体积也跟着增加,同时热更新以全量包的形式进行,也大大增加了用户更新时的流量消耗,因此业务拆包势在必行,拆包的目标如下: 减小业务打包生成的jsbu...

react-native-code-push热更新探索实录(IOS)

更详细的react-native-code-push使用实录,一步一步实现IOS下的React-native热更新。

React-native-code-push是微软针对React-native推出的热更新服务,最近的React-native项目需要对热更新进行调研,了解到微软有提供相应的热更新模块,便着手去尝试使用这个模块的使用。事实上React-native-code-push的官方文档写的十分详细,针对IOS和Android也有很详细的配置说明,网上也有很多相关的教程,但是在实际动手实现的过程中,发...

Vue1+源码-深入解析Vue的path状态机

本文将对Vue1.0.26源码的path状态机进行详细的介绍

本文将深入解析Vue源码中的path状态机,介绍path状态机如何工作,以及状态机的应用情景。 ps.我参考的是Vue 1.0.26的源码,下面将主要针对源码中/parsers/path.js和/parser/expression.js对Vue的path状态机进行说明。 什么是有限状态机 有限状态机(finite-state machine,简称FSM),是一种可以描述状态和动...