网页二维码推广App的实现

简介: 移动互联网时代,一个APP的平均推广成本早已经超过了10块。而推广通常分二类: 1、已经下载过的用户,可以直接打开应用(一般人的手机上安装的应用都非常多,要快速找到某个应用是很困难的事情,而且Android、IOS的搜索都做的很烂~ ~ ); 2、未下载过的用户,跳转至下载页;   手机设备...

移动互联网时代,一个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  (需要FQ),它会弹出一个中间页,中间页会显示一个“安装”或“打开”按钮。中国的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;
}
 
想对用户更友好一点:如果已安装就直接启动应用(跳过上面的中间页)或者未安装时跳到下载界面,可以自己在应用中注册一个自定义的url scheme,然后调用APP自定义的链接,在超过一定时间后(假设500毫秒后)没有响应,就直接跳到下载界面。

iOS
1) 直接跳转浏览器 https://itunes.apple.com/cn/app/idxxx 已安装的话就会显示“打开”,未安装就会提示“下载”;
2) 直接使用APP自己注册的url scheme(前提是你必须已经安装了该APP);
 
iOS9中在应用A中想判断应用B是否已经安装/可直接启动,需要在Info.plist中添加白名单,可自行搜索。
 
想对用户更友好一点:如果已安装就直接启动应用(跳过上面的中间页)或者未安装时跳到下载界面,一样也是使用延时来处理。原理与Android一样,先调用自定义的url scheme,在超过一定时间,假定3S后没有响应,就直接跳到下载页。
 
 
微信扫一扫功能
单独把微信拿出来,是因为做了很多限制,而且因为微信用户群体太过庞大,不得不专门处理。
拿上面的market://details?id=<package_name>来讲,你生成二维码,微信根本就扫不出来。怎么办呢?
 
 
那问题又来了,我怎么知道玩家是通过微信扫一扫过来的啊,很简单。判断HTTP请求的User-Agent
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)就将网页跳到下载页(就算时间过短了,反正这个中间页也有按钮可以直接打开应用)。

目录
相关文章
|
5月前
|
搜索推荐 前端开发 JavaScript
【专栏】从网页轻松转换为应用越来越便捷
【4月更文挑战第27天】本文介绍了将网页转换为移动应用的在线生成App过程,包括原理(封装网页内容,添加移动特性)、优势(便捷高效,节省成本,快速上线)以及具体步骤(选择工具,准备内容,配置选项,生成测试,发布推广)。同时,注意版权、兼容性和用户体验问题。通过案例分析和实践经验分享,帮助读者深入了解如何通过在线工具实现App梦想,强调了网页优化、用户界面设计和个性化定制的重要性。
142 3
|
5月前
|
开发框架 前端开发 Android开发
专刊:随着技术进步,未来在线生成App将有更多可能性,为移动应用开发带来便利
【4月更文挑战第27天】在数字化时代,移动App变得不可或缺,而在线生成App的技术正逐渐兴起,为开发者提供快捷创建移动应用的途径。本文探讨了网页到App的转变过程,介绍了WebView嵌入、混合式开发框架和云端打包技术等方法,以及在线生成App的步骤、优势和挑战。虽然存在性能和功能限制,但随着技术进步,未来在线生成App将有更多可能性,为移动应用开发带来便利。
61 2
|
2月前
|
缓存 前端开发 Java
【Azure 应用服务】App Service 使用Tomcat运行Java应用,如何设置前端网页缓存的相应参数呢(-Xms512m -Xmx1204m)?
【Azure 应用服务】App Service 使用Tomcat运行Java应用,如何设置前端网页缓存的相应参数呢(-Xms512m -Xmx1204m)?
|
2月前
|
Linux C#
【Azure App Service】C#下制作的网站,所有网页本地测试运行无误,发布至Azure之后,包含CHART(图表)的网页打开报错,错误消息为 Runtime Error: Server Error in '/' Application
【Azure App Service】C#下制作的网站,所有网页本地测试运行无误,发布至Azure之后,包含CHART(图表)的网页打开报错,错误消息为 Runtime Error: Server Error in '/' Application
|
4月前
|
安全 JavaScript 前端开发
kotlin开发安卓app,JetPack Compose框架,给webview新增一个按钮,点击刷新网页
在Kotlin中开发Android应用,使用Jetpack Compose框架时,可以通过添加一个按钮到TopAppBar来实现WebView页面的刷新功能。按钮位于右上角,点击后调用`webViewState?.reload()`来刷新网页内容。以下是代码摘要:
|
4月前
|
XML JSON 数据安全/隐私保护
如何使用Fiddler抓取APP接口和微信授权网页源代码
Fiddler是一款强大的抓包工具,用于捕获HTTP/HTTPS流量,包括手机APP和微信授权页面的数据。下载安装Fiddler后,需设置电脑代理,如端口8888,并在手机上配置相同代理,确保两者在同一局域网。通过安装Fiddler证书,可解密HTTPS请求。在手机上打开目标应用或网页,Fiddler将显示请求详情,便于接口调试和数据查看。
145 0
如何使用Fiddler抓取APP接口和微信授权网页源代码
|
3月前
|
Android开发
【亲测,安卓版】快速将网页网址打包成安卓app,一键将网页打包成app,免安装纯绿色版本,快速将网页网址打包成安卓apk
【亲测,安卓版】快速将网页网址打包成安卓app,一键将网页打包成app,免安装纯绿色版本,快速将网页网址打包成安卓apk
83 0
|
5月前
|
Android开发 UED 开发者
专刊:如何使用网页封装技术将网站转化为移动应用,节省开发成本和时间
【4月更文挑战第27天】本文介绍了如何使用网页封装技术将网站转化为移动应用,节省开发成本和时间。通过选择合适的在线封装工具(如Cordova、Appy Pie、Web2App),用户可遵循简单流程,输入网站URL和APP信息,定制设置后生成APP。优化用户体验包括适应移动设备显示、优化加载速度和添加移动特性。发布前需充分测试,并遵循应用商店的发布规则。网页封装为小型企业和个人开发者提供了快速进入移动市场的途径,但成功APP的关键在于不断优化用户体验。
140 4
|
5月前
|
移动开发 负载均衡 小程序
代驾app开发丨代驾系统开发玩法详情丨代驾系统开发网页版/H5/小程序及源码部署
**司机/代驾员端**:司机可以通过APP接收订单,查看订单详情、路线和导航,提供现场服务并进行确认。
|
5月前
|
编解码 小程序 算法
短剧系统开发(网页版/APP/小程序)丨短剧系统开发运营版及源码出售
短剧系统开发功能旨在为用户提供观看、分享和交流短剧作品的平台,涉及多种功能和特性,
下一篇
无影云桌面