openinstall的作用:
第一步:登入openinstall官网,没有账号就注册个
第二步:没有应用就添加一个应用(选择高级版)
第三步:下载导入sdk(其实就一个jar)
dependencies { implementation files('libs/OpenInstall_v2.3.0.jar') }
第四步:在AndroidManifest.xml中添加权限声明
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
第五步:在AndroidManifest.xml的application标签内设置AppKey
<meta-data android:name="com.openinstall.APP_KEY" android:value="******"/>
第六步:在application里添加初始化代码
@Override public void onCreate() { super.onCreate(); if (isMainProcess()) { openInstall(); } }
//判断是否是主进程 public boolean isMainProcess() { int pid = android.os.Process.myPid(); ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); for (ActivityManager.RunningAppProcessInfo appProcess : activityManager.getRunningAppProcesses()) { if (appProcess.pid == pid) { return getApplicationInfo().packageName.equals(appProcess.processName); } } return false; }
第七步:在AndroidManifest.xml里指定自己的application
<application android:name=".TestApplication" />
第八步:实现快速下载
第九步:携带参数安装,在application里添加以下代码
private void openInstall() { //初始化 OpenInstall.init(this); //携带参数安装 OpenInstall.getInstall(new AppInstallAdapter() { @Override public void onInstall(AppData appData) { Log.d(TAG, "appData=" + appData); //获取渠道数据 channelCode = appData.getChannel(); //获取自定义数据 try { duanzishou = new JSONObject(appData.getData()).optString("duanzishou"); } catch (JSONException e) { e.printStackTrace(); } } }); }
第十步:测试携带参数安装
第十一步:在需要一键拉起的activity里添加代码
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); OpenInstall.getWakeUp(getIntent(), wakeUpAdapter); } @Override protected void onNewIntent(Intent intent) { super.onNewIntent(intent); // 此处要调用,否则App在后台运行时,会无法截获 OpenInstall.getWakeUp(intent, wakeUpAdapter); } AppWakeUpAdapter wakeUpAdapter = new AppWakeUpAdapter() { @Override public void onWakeUp(AppData appData) { //获取渠道数据 String channelCode = appData.getChannel(); //获取绑定数据 String bindData = appData.getData(); Log.d("appData", "getWakeUp : wakeupData = " + appData.toString()); } }; @Override protected void onDestroy() { super.onDestroy(); wakeUpAdapter = null; }
第十二步:在AndroidManifest.xml的唤醒页面activity标签中添加intent-filter(一般为MainActivity),配置scheme,用于浏览器中拉起
<intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.BROWSABLE"/> <data android:scheme="******"/> </intent-filter>
第十三步:上传apk,设置自定义参数和值,生成链接和二维码,扫下二维码,手机跳转到链接的界面,点击立即使用,就自动跳转到程序上
第十四步:查看一键拉起的获取的参数的值
第十五步:配置渠道参数
https://app-*****.openinstall.io/channel-landing?channelCode=00000111(这里有渠道信息channelCode,但是这个链接没有自定义参数,上面有自定义有参数的链接但是没有渠道信息,如果我两个都想要,(这个连接都是后台生成,后台给的,我这里就拼接下)https://app-*********.openinstall.io/js-test/android/1047412755738029502?duanzishou=%E5%A4%A7%E5%BC%A0%E4%BC%9F&channelCode=00000111)
第十六步:将拼接的链接在草料二维码网站(https://cli.im/url)生成二维码
第十七步:扫二维码,下载apk,安装,打开,测试参数有没有获取到
第十八步:注册量统计(看业务需求)
//用户注册成功后调用OpenInstall.reportRegister();
第十九步:看应用统计和渠道报表
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。