android通过用户打包,分享apk可以知道某个用户分享的
来源:互联网 发布:大数据真实性 编辑:程序博客网 时间:2024/06/05 16:23
目前很多公司通过发送一个分享链接来分享软件,分享链接里包含某个分享用户的信息,只要新用户在html中注册这个自己的信息就可以,给分享用户一个福利,如果用我开发的这个jar包,则直接在apk里就能获取谁分享的。减少html页面制作。
需要统计的android项目配置
修改app目录下gradle.build
修改如下配置
buildTypes 中 release 和 debug 配置
buildConfigField “String”, “USER_ID”,”\”\”“
buildTypes { release {buildConfigField "String", "USER_ID","\"\"" } debug {buildConfigField "String", "USER_ID","\"\"" } }
gradle.build android 下配置
android { applicationVariants.all { variant -> variant.outputs.each { output -> def outputFile = output.outputFile def fileName if (outputFile != null && outputFile.name.endsWith('.apk')) { if (variant.buildType.name.equals('release')) { fileName = "${defaultConfig.applicationId}.${USER_ID}${defaultConfig.versionName}.apk" } else if (variant.buildType.name.equals('debug')) { fileName = "${defaultConfig.applicationId}.${USER_ID}${defaultConfig.versionName}.apk" } output.outputFile = new File(outputFile.parent, fileName) } } }}
再添加一个常量
ext {USER_ID= ""}
整体配置如下
android { compileSdkVersion 25 buildToolsVersion "26.0.1" defaultConfig { applicationId "com.example.ndileber.ndilebertest" minSdkVersion 15 targetSdkVersion 25 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" vectorDrawables.useSupportLibrary = true } signingConfigs { release { keyAlias 'key0' keyPassword '123456' storeFile file('keystore/dileber.jks') storePassword '123456' } } buildTypes { release {buildConfigField "String", "USER_ID","\"\"" minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signingConfig signingConfigs.release } debug {buildConfigField "String", "USER_ID","\"\"" minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signingConfig signingConfigs.release } } applicationVariants.all { variant -> variant.outputs.each { output -> def outputFile = output.outputFile def fileName if (outputFile != null && outputFile.name.endsWith('.apk')) { if (variant.buildType.name.equals('release')) { fileName = "${defaultConfig.applicationId}.${USER_ID}${defaultConfig.versionName}.apk" } else if (variant.buildType.name.equals('debug')) { fileName = "${defaultConfig.applicationId}.${USER_ID}${defaultConfig.versionName}.apk" } output.outputFile = new File(outputFile.parent, fileName) } } }}dependencies { compile fileTree(include: ['*.jar'], dir: 'libs')}ext {USER_ID= ""}
在android代码中获取 userId,可以统计userid的渠道
String userId = BuildConfig.USER_ID;
运行的jar包的配置
config.properties
//android项目盘符dir=D://android项目目录src=\\workspace\\NdileberTest//jar包零时文件(随便设置)temp=F:\\temp\\temp//gradle目录GRADLE_SRC=D:\\soft\\Android\\Android Studio\\gradle\\gradle-3.3
运行 6969就是用户userId,导出的包则是包含用户信息,这个jar可以嵌入服务器中使用。线上一键打包
java -jar gradleUser.jar 6969
jar包下载地址
jar包下载地址
阅读全文
0 0
- android通过用户打包,分享apk可以知道某个用户分享的
- android打包,用户渠道,分享apk可以知道某个用户分享的
- Android微信分享,打包前可以分享,打包后不能分享。
- 用户研究经验分享
- 用户研究经验分享
- Android-分享某个应用程序
- SUSE Studio 的用户可以透过 SUSE Gallery 分享做好的 Linux appliance
- 驱动分享模型:让用户主动分享引流的秘诀
- 分享一个自动编译,打包,签名 android apk 的小脚本
- android studio 配置打包签名apk,完成微信等的第三方分享功能
- 【分享】某卖鞋电商的用户搜索日志
- 淘宝分享互联网用户的心理特征
- hive 用户分享给其他用户的做法
- 打包后的apk微信分享依然失败
- 如何自定义android分享功能可以分享的文件格式~
- nc7下某个用户某个节点有多个模板,可以通过代码实现通过选择不同的业务流程来调用不同的模板吗?
- Android应用程序的混淆打包分享
- 用户体验设计资源分享
- 没有上司的舞会
- 基于mappwidget的手绘地图
- 数据类型转换之 QByteArray转QPixmap
- Iconfont矢量图图标怎么使用带图详解
- Bluetooth蓝牙
- android通过用户打包,分享apk可以知道某个用户分享的
- 菜单条,菜单,菜单项
- DataWorks数据埋点的设计及未来发展的思考
- Inno Setup入门(九)——修改安装过程中的文字显示
- 关于SwipeRefreshLayout与ViewPage、ListView嵌套使用的几个问题
- Spring与SpringMVC的关系
- 日常运维(七):Linux下的数据备份工具rsync
- Hadoop2.7.4分布式集群安装配置文件
- gcc/g++