从网上搜到之前手机中判断App是否安装可以通过onblur事件+定时器来实现. 但现在要做这个功能时,按网上的说法已经不能实现了.因为现在浏览器中打开App,window不会触发onblur事件. 在尝试几次后发现,虽然window.onblur没有触发,但定时器仍然会停止,所以使用这个特点就尝试做了一个demo. dome中包含2个页面,一个主页面,另一个用来打开App的页面: 主页面 <script type="text/javascript"> var log = f…
最近公司App产品在运营推广上有一个需求,就是要求可以让用户在访问我们的推广网页时,就可以判断出这个用户手机上是否安装了我们的App,如果安装了则可以直接在网页上打开,否则就引导用户前往下载.从而形成一个推广上的闭环. 在iOS上,其实只需要在<head>标签内增加一个<meta>标签,系统就会自动帮你在顶部生成一个Banner,而且会智能引导用户操作(如果未安装就跳转AppStore,否则直接打开).格式如:<meta name='apple-itunes-app' con…
NSString *str = [NSString stringWithFormat:@"%@://%@",[dic objectForKey:@"ios_url_scheme"],[dic objectForKey:@"app_bundle_id"]]; NSURL *app_url = [NSURL URLWithString:str]; BOOL hasInstalled = [[UIApplication sharedApplicatio…
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh" lang="zh" dir=&qu…
这种功能的作用: 1.一般公司有自己的app,而app是需要不断有新用户涌入才能持续运营,达到不错的收入.就需要使用这种方式进行引入新的用户. 2.一些内容在网页端体验不好,或者一些功能需要app内才能实现,就需要将用户引入app中.打开app并自动跳到相应页面. 首先,这个方法仅适用于移动端h5页面,一般的智能机都是可以使用的.这里使用的是es5的代码模式,容易理解. 知道了需求,我们看看如何实现: 1.首先要通过UA判断当前浏览器UA 并转大写.用来分别针对安卓和ios机型做2种不一样的处理…
背景 对于APP来说,回流分享页是最好的最便宜的也是最病毒式的拉新方式.让新用户去下载APP是重要的.对老用户来说,可以直接调起APP也是提升用户体验和让用户有侵入式体验的重要手段.所以我们一起来看看有哪些方式可以唤起APP的 概念叙述 调起APP在不同平台用不同的方式,主要就分3个 * URI Scheme * universal Link * Android App Links 现在还是有很多第三方来协助你处理这个事情,通过接入他们的SDK和客户端代码来处理,但是万变不离其宗,所有的第三方也…
我们知道通过oncontextmenu事件可以屏蔽浏览器右键菜单 $('img').on("contextmenu",function(E){E.preventDefault();E.stopPropagation();E.returnValue=false; return false;}) 可是这一招在移动设备的浏览器中却失灵了,移动设备的浏览器的contextmenu是通过长按事件触发的,我想正是因为这和原因造成的上述手段失灵. 经调试发现,屏蔽touchstart事件可以解决:…
<!--[if !IE]><!--> 除IE外都可识别 <!--<![endif]--><!--[if IE]> 所有的IE可识别 <![endif]--><!--[if IE 6]> 仅IE6可识别 <![endif]--><!--[if lt IE 6]> IE6以及IE6以下版本可识别 <![endif]--><!--[if gte IE 6]> IE6以及IE6以上版本可识…
使用参考:http://www.jianshu.com/p/89ccae3e590b源码地址:https://github.com/amitshekhariitbhu/Android-Debug-Database 特色: 可以查看你的应用中所有的数据库. 可以查看你的应用中所有的shared preferences. 对你指定的数据库执行SQL语句. 对你指定的数据库中的数据进行可视化的编辑. 将数据库直接下载下来. 添加依赖:    在你的build.gradle添加如下代码:       …
记得以前Delphi/BCB里的socket编程,要判断[连接的另一方]是否断开了,只要在ondisconnect事件里处理就行了!如今在C#中,这个问题的确还是个问题哦!        首先,Socket类的Connected属性只表示最后一次I/O操作的状态,如果这之后[连接的另一方]断开了,它还一直返回true, 除非你再通过socket来发送数据.所以通过个属性来判断是行不通的!        有人说可以用Socket.Available属性来判断,msdn中说:如果[连接的另一方]断开…