chrome系列-扩展程序开发学习-后台运行

chrome系列-扩展程序开发学习-后台运行

月光魔力鸭

2018-09-09 07:27 阅读 698 喜欢 0 chrome系列 后台运行

在程序中,会有需要后台一直运行的场景。这一节我们来做一个监控某网站的运行状态,如果没有运行,则改变当前的图标。

由于这个扩展程序没有页面展示,只是后台运行,所以我们的manifest.json 是这个样子的:

{
	"manifest_version":2,
	"version":"1.0",
	"name":"监测BYYUI运行状态",
	"icons":{
		"16":"img/icon16.png"
	},
	"browser_action":{
		"default_icon":{
			"16":"img/icon16.png"
		},
		"default_title":"监测BYYUI运行状态"
	},
	"background":{
		"scripts":[
			"demo.js"
		]
	},
	"permissions":[
		"http://www.byyui.com/"
	]
}

先来理解下逻辑:没啥理解的,就是做一个定时器,定时去请求undefined

上代码:

function request(url,cb){
	var xhr = new XMLHttpRequest();
	xhr.open('GET',url);
	xhr.onreadystatechange = function(){
		if(xhr.readyState === 4 && xhr.status === 200){
			cb(true)
		}else{
			cb(false);
		}
	}
	xhr.onerror = function(){
		cb(false);
	}
	xhr.send();
}

setInterval(function(){
	request('http://www.byyui.com',function(flag){
		chrome.browserAction.setIcon({path : flag ? 'img/icon16.png' : 'img/icon-close16.png'});
	});
},5000);

好了,就这些,让我们来看下效果图。

假装有效果图

更多奇思妙想,等待你的发掘!

转载请注明出处: https://chrunlee.cn/article/chrome-learn-4.html


感谢支持!

赞赏支持
提交评论
评论信息 (请文明评论)
暂无评论,快来快来写想法...
推荐
docker build 执行yum失败,找不到repo
小程序需要用到用户的手机号码,看了下API 以及相关的demo,基本都是服务端进行解密的,问题是需要的参数并没有用到secret,只需要 session_key / iv /encryptedData 即可,那完全可以在客户端进行处理啊。
与python后端进行联调,后端协议为jsonrpc ,这里简单记录下jsonrpc的通用请求函数,并附带几个栗子
登录方式现在非常多,不过像我这种小站让用户自己注册基本是不可能的了,只能依赖现有的第三方的登录来集成,之前有集成github,不过这个太过针对性,这里准备集成QQ互联登录,慢慢记录下。
最近看某站壁纸挺好看的,抓了几百张放本地...可总不能每天手动去换吧,就做了一个随机更换的小工具。
最近有个小功能需要一些基础数据,找了一下在小程序上有发现,暂时还没找到他的网站,想着把这些数据爬一些下来做为基础数据使用的。本来还想着直接反编译小程序的,没想到微信变更了加密方式,以前反编译的路子走不通了。
扩展程序中会有需要请求外部接口获取数据的时候,如果直接在JS中写的话,会跨域,但是谷歌扩展程序支持这种情况,只需要配置一下即可。
上一张中已经完成了比较简易的3D全景浏览,但是...这是写死在xml中的,对于我们实际的项目,这种情况是不可能适应的。所以,来了解下如何动态加载xml已经设置对应的热点。