网页二维码推广App的实现
移动互联网时代,一个APP的平均推广成本早已经超过了10块。而推广通常分二类:
1、已经下载过的用户,可以直接打开应用(一般人的手机上安装的应用都非常多,要快速找到某个应用是很困难的事情,而且Android、IOS的搜索都做的很烂~ ~ );
2、未下载过的用户,跳转至下载页;
手机设备又分为Android、iOS二大阵营,而原理基本上就是通过url scheme来实现:
浏览器中直接打开
Android:market://details?id=<package_name>
官方文档: http://developer.android.com/distribute/tools/promote/linking.html (需要翻墙),它会弹出一个中间页,中间页会显示一个“安装”或“打开”按钮。中国的Android市场太过混乱,好在大家都支持Google官方的这个market协议,建议直接用这个。
如果是一个叫A的app想提示下载另外一个B的app,可以参考下面的代码:
private String getGooglePlayStoreUrl(){
String id = activity.getApplicationInfo().packageName; // current google play is using package name as id
PackageManager packageManager = activity.getApplicationContext().getPackageManager();
Uri marketUri = Uri.parse("market://details?id=" + id);
Intent marketIntent = new Intent(Intent.ACTION_VIEW).setData(marketUri);
if (marketIntent.resolveActivity(packageManager) != null)
return "market://details?id=" + id;
else
return "https://play.google.com/store/apps/details?id=" + id;
}
iOS
var ua = navigator.userAgent.toLowerCase();
if (/micromessenger/i.test(ua)) {
//在微信中被打开的...
}
比如Java、Node.js也是类似了,获取HTTP头HTTP_USER_AGENT判断一下即可
可参考:如何判断微信内置浏览器>>
=====================================
总结,保守一点就是无论是否安装过应用,浏览器直接访问下面的地址,会打开中间页(Android某个应用商店或iOS的App Store):
Android market://details?id=<package_name>
iOS https://itunes.apple.com/cn/app/idxxx
但都会遇到被微信拦截的问题。想不被拦截就只能按官方的流程走下去。
如果想做到,安装过应用就直接启动,没安装就跳到下载页,思路就是优先使用APP的自定义scheme来尝试打开应用,在超过一定时间后(假设3S)就将网页跳到下载页(就算时间过短了,反正这个中间页也有按钮可以直接打开应用)。
网页二维码推广App的实现的更多相关文章
- 使用扫描二维码打开app
应该不少人遇到过这种需求,扫描二维码打开app如果用户没有这个app则提示它跳转. 用网页直接来调用app是不打可能的,必须原生那边先做一些配置. 首先,安卓和苹果的调用方法是不同的. 所以我们需要先 ...
- 手机扫描二维码下载APP,根据操作系统不同自动下载
Android和IOS手机扫描二维码下载APP,根据OS不同,自动处理相应下载操作.IOS自动跳转至AppStore应用下载页,Android自动下载应用的apk包. <script type= ...
- 生成扫描二维码下载app的二维码的方法
进入APP store苹果应用程序商店,根据分类找到你要生成二维码的APP,然后在浏览器连接里找到ID后的一串数字就是APP的应用ID了. 安卓系统的appid 在电脑浏览器中打开应用宝官网,http ...
- android扫描网页二维码进行网页登录
转载请标明出处: http://www.cnblogs.com/dingxiansen/: 本文出自:丁先森-博客园 周六和朋友去网吧开黑,开机打开TGP,朋友那边开始输入账号密码,我看了他一眼low ...
- 微信小程序二维码推广统计
微信小程序可以通过生成带参数的二维码,那么这个参数是可以通过APP的页面进行监控的 这样就可以统计每个二维码的推广效果. 今天由好推二维码推出的小程序统计工具HotApp小程序统计也推出了带参数二维码 ...
- jQuery.qrcode二维码插件生成网页二维码
如果是一个固定的二维码,我们只需要在网上找个地方生成图片,然后放上图片就可以了.但如果是地址不固定需要根据页面来生成的话.就有两种做法,一个是后端根据页面做一个动态的二维码.一种是前端使用插件生成. ...
- h5 扫描二维码打开app和点击下载功能的实现
window.onload = function () { jumpToapp() } var browser = { isAndroid: function () { return navigato ...
- 关于APP上架制作二维码相关
1.安卓版本APP上架并生成二维码问题:安卓版本上架国内市场,这个情况比较复杂一些,比如百度,网址是以上传APP生成的一个编号来进行的,每次升级更新后都发生了变化,也就相当于每次升级后网址发生改变(比 ...
- 如何用C代码生成二维码
如何用C代码生成二维码 当下因微信和支付宝等手机应用广泛使用,而基于二维码/一维条码的移动支付,也借助手机移动端席卷全国,使得越来越多的人知道有"二维码"这么一种东西. 对于普通用 ...
随机推荐
- Java泛型总结(转)
本文是转载,原文链接:http://www.cnblogs.com/lwbqqyumidi/p/3837629.html 一. 泛型概念的提出(为什么需要泛型)? 首先,我们看下下面这段简短的代码: ...
- Jade之Case
Case jade中的case类似js中的switch语句. 当前一个when中无语句的时候,将一直往下直至遇到一个有语句的when才跳出. jade: - var friends = 10 case ...
- C++ map使用(基于RBTree)
一.insert ◦1)用insert函数插入pair数据 ◦map<int, string> mapStudent; ◦mapStudent.insert(pair<int, st ...
- spinner与arrays.xml的使用
在Android中,用string-array是一种简单的提取XML资源文件数据的方法. 例: 把相应的数据放到values/arrays.xml文件里 <?xml version=" ...
- Spring MVC静态资源处理(在applicationContex.xml文件中进行配置)
优雅REST风格的资源URL不希望带 .html 或 .do 等后缀.由于早期的Spring MVC不能很好地处理静态资源,所以在web.xml中配置DispatcherServlet的请求映射,往往 ...
- LDO-BD00C0AWFP
BD00C0AWxx 1.该产品是ROHM公司的一款高输入电压可达26.5V,输出电压可达15V,输出电流1A的LDO.具有较低的ESR Capacitor. 2.输入电压变化4-26.5V,输出3 ...
- Incompatible operand types DeptE and int 异常处理
Incompatible operand types DeptE and int 1.java不会运算到==的值,把==改为equals 2.java不会运算到eequals的值 把equals的改为 ...
- Android 开源项目维护者宣布退出
Android开源项目(Android Open Source Project,AOSP)的长期维护者Jean-Baptiste Quéru在Google+上宣布退出,他退出AOSP项目的原因被认为与 ...
- 解决代码着色组件SyntaxHighlighter行号显示问题
SyntaxHighlighter是根据代码中的换行符分配行号的.但是,如果一行代码或者注释比较长,在页面显示时需要分成多行显示,这时行号就对不上了.如下图: 通过下面的css强制不换行,可以避开这个 ...
- Nim教程【五】
妈蛋,花了两天时间才搞定博客园的API, 比预期的时间整整多了1天, 不管怎么说,总算把博客园的客户端搞定了 这篇文章就是用博客园的客户端发布的, 先贴张图,给大家看看, 后面我会和博客园的领导商量一 ...