赞
踩
android 分享出去h5页面,通过页面下载对应包,安装启动登录注册时候,需要自动填写邀请码,一般情况下,我们需要将分享人信息写入app包中,这样下载时候根据这个信息可以获取到对应安装包。
android我们可以把信息写入assets文件夹下,打包时候assets不会被编译。所以在app安装后,只需要读取对应assets文件,获取对应邀请码。
- /**
- * 获取本地写入邀请码文件内容
- *
- * @param context
- * @return
- */
- public static String popularizeInvitationCode(Context context) {
- String invitationCode = null;
- AssetManager assetManager = null;
- InputStream inputStream = null;
- BufferedReader bufferedReader = null;
- try {
- if (context != null) {
- assetManager = context.getAssets();
- if (assetManager != null) {
- inputStream = assetManager.open("popularize-invitation-code.properties");
- if (inputStream != null) {
- bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
- StringBuffer stringBuffer = new StringBuffer();
- while (null != (invitationCode = bufferedReader.readLine())) {
- stringBuffer.append(invitationCode);
- }
- return stringBuffer.toString();
- }
- }
- }
- } catch (Exception e) {
- e.printStackTrace();
- } finally {
- try {
- //由于assetManager 只直接获取系统资源对应,不是自己new出来。所以不能close,
- //关闭会导致系统资源关闭,无法加载,引发资源找不到异常。
- // if (assetManager != null){
- // assetManager.close();
- // }
- if (inputStream != null) {
- inputStream.close();
- }
- if (bufferedReader != null) {
- bufferedReader.close();
- }
-
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
- return invitationCode;
- }
重点:assetManager在open之后千万不要关闭 //assetManager.close();
当用户点击邀请时候,我们告诉后台生成对应app包。被邀请用户点击下载时候,下载指定app包实现,邀请码自动填充
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。