源码介绍
产品优势
子渠道管理功能
可新增新的子渠道,对生成的多个包进行数据分开统计,并且可进行删除渠道,编辑渠道名称、渠道地址的操作
内置预留广告位
预留开屏、悬浮、底部、顶部等位置进行放置广告,并进行编辑
APP推送管理
给用户推送消息的设置,自定义编辑推送标题、消息内容、书籍的选择、URL地址。对推送的数据进行统计,可准确确认推送到达数
首次打开为指定页面
可设置APP首次打开为指定页面,可指定打开app任意小说任意章节
极速体验产品优势
首家原生开发移动端App最新软件体验、功能强大、后台一站式管理多个终端
精品研发团队
不定时更新产品新功能,永久实时同步
版权计划
全面实施,对接市面主流书城API,解决内容问题
后台介绍
app排版内容管理
可自定义app内任意书籍展现位置包含:首页管理、书架管理、分类管理、BANNER管理
支付统计
可统计今日充值、昨日充值、本月充值、累计充值、并能选择特定的渠道查询其订单类型、支付状态、支付方式、支付时间显示所有
用户统计功能
对注册APP用户的,id、昵称、头像、电话、三方标识、三方类型、用户机型、渠道来源、注册时间等进行统计,并可查询指定用户信
APP升级更新版本
记录使用过的版本、更新的内容、版本状态
用户反馈
添加用户反馈入口,帮助用户更好体验产品,也让产品更懂用户
签到/分享功能
统计在APP内进行签到的人数,签到用户信息,签到的时间等
1.适用范围
Java8
Kotlin:1.3.11
Gradle:3.1.2
Android Studio:3.2
2.集成准备
在配置CC阅读android客户端前,请先申请阿里热修复,友盟统计,新浪,QQ,微信等第三方平台的appkey,广告目前接入的是广点通广告,如需要,申请广点通广告位。如需推送功能,目前支持小米推送及华为推送,请申请相应功能。
阿里热修复 https://help.aliyun.com/product/51340.html
友盟统计 https://www.umeng.com
新浪微博 https://open.weibo.com/
QQ https://connect.qq.com/index.html
微信 https://open.weixin.qq.com/
广点通 https://e.qq.com/dev/index.html
小米推送 https://dev.mi.com/console/appservice/push.html
华为推送 https://developer.huawei.com/consumer/cn/service/hms/pushservice.html
支付宝 https://open.alipay.com/platform/home.htm
阿里短信 https://help.aliyun.com/product/44282.html
微信支付 https://pay.weixin.qq.com/index.php/core/home/login?return_url=%2F
3.配置文件
1.在Android Studio工程中的App模块中的SophixStubApplication文件中配置阿里热修复的相关信息:
@OverrideprotectedvoidattachBaseContext(Contextbase){super.attachBaseContext(base);//如果需要使用MultiDex,需要在此处调用。MultiDex.install(this);initSophix();}privatevoidinitSophix(){StringappVersion="0.0.0";try{appVersion=this.getPackageManager().getPackageInfo(this.getPackageName(),0).versionName;}catch(Exceptione){}finalSophixManagerinstance=SophixManager.getInstance();instance.setContext(this).setAppVersion(appVersion).setSecretMetaData("appkey","appsecret","appsecretToken").setEnableDebug(true).setEnableFullLog().setPatchLoadStatusStub(newPatchLoadStatusListener(){@OverridepublicvoidonLoad(finalintmode,finalintcode,finalStringinfo,finalinthandlePatchVersion){if(code==PatchStatus.CODE_LOAD_SUCCESS){Log.i(TAG,"sophixloadpatchsuccess!");}elseif(code==PatchStatus.CODE_LOAD_RELAUNCH){//如果需要在后台重启,建议此处用SharePreference保存状态。Log.i(TAG,"sophixpreloadpatchsuccess.restartapptomakeeffect.");}}}).initialize();}
如不需要此功能,在AndroidManifest.xml中修改application的name为BookStoreApplication,并在BookStoreApplication类的onCreate方法中注释或删除SophixManager.getInstance().queryAndLoadNewPatch()
2.在Android Studio工程中的App模块中的BookStoreApplication文件中,配置友盟相关信息及三方信息,用于三方登录及分享功能:
UMConfigure.init(this,"友盟key",”渠道”,UMConfigure.DEVICE_TYPE_PHONE,"")setScenarioType(this,MobclickAgent.EScenarioType.E_UM_NORMAL)/***设置组件化的Log开关*参数:boolean默认为false,如需查看LOG设置为true*/UMConfigure.setLogEnabled(BuildConfig.DEBUG_MODE)PlatformConfig.setWeixin("appkey","appsecret")PlatformConfig.setSinaWeibo("appkey","appsecret","授权回调地址")PlatformConfig.setQQZone("appkey","appsecret")注意QQ除了在这儿配置外,在AndroidManifest.xml中也需要配置/***友盟-QQ*/<activityandroid:name="com.tencent.tauth.AuthActivity"android:launchMode="singleTask"android:noHistory="true"><intent-filter><actionandroid:name="android.intent.action.VIEW"/><categoryandroid:name="android.intent.category.DEFAULT"/><categoryandroid:name="android.intent.category.BROWSABLE"/><dataandroid:scheme="tencentAPPKEY"/></intent-filter></activity>在AndroidManifest.xml还需要配置友盟的渠道/***ChannelID用来标识App的推广渠道,作为推送消息时给用户分组的一个维度*/<meta-dataandroid:name="UMENG_CHANNEL"android:value="${CHANNEL_VALUE}"/>
3.在Android Studio工程中的App模块中的BookStoreApplication文件中,配置推送相关功能。小米推送:
privatefuninitMiuiPush(){if(shouldInit()){MiPushClient.registerPush(this,"AppID","AppKey")}//打开LogvalnewLogger=object:LoggerInterface{overridefunsetTag(tag:String){//ignore}overridefunlog(content:String,t:Throwable){Log.d(TAG,content,t)}overridefunlog(content:String){Log.d(TAG,content)}}Logger.setLogger(this,newLogger)}华为推送主要配置在AndroidManifest.xml中:/***华为推送*/<meta-dataandroid:name="com.huawei.hms.client.appid"android:value="appid=******"/><meta-dataandroid:name="com.huawei.hms.version"android:value="2.6.1.301"/>华为推送接收到的数据为scheme类型,需要自信配置相应参数/***接入HMSSDK需要注册的应用下载服务|AccessHMSSDKneedtoregisterappdownloadservice*/<serviceandroid:name="com.huawei.updatesdk.service.deamon.download.DownloadService"android:exported="false"/><activityandroid:name=".book_push.HuaWeiReceiverActivity"><intent-filter><actionandroid:name="android.intent.action.VIEW"/><categoryandroid:name="android.intent.category.DEFAULT"/><dataandroid:host="自定义域名"android:path="/地址"android:scheme="customscheme"/></intent-filter></activity>
4.在CommenTag文件中,配置广点通广告:
constvalAD_APPKEY="******"//开屏页广告位constvalAD_SPLASH_KEY="******"//阅读页底部广告位constvalAD_BANNER_KEY="******"//阅读页章节末尾广告位constvalAD_NATIVE_IMAGE="******"//首页banner最后一页展示广告位constvalAD_NATIVE_BANNER_IMAGE="******"
5.配置友盟统计多渠道,在config.gradle中定义渠道名称(示例中为渠道cc1/cc2/cc3/cc4)
channel=["cc1":'"cc1"',"cc2":'"cc2"',"cc3":'"cc3"',"cc4":'"cc4"',"cc5":'"cc5"']在app模块中的build.gradle中引用相应渠道同时,在readviewlibrary中的build.gradle中应用相应渠道productFlavors{cc1{manifestPlaceholders=[CHANNEL_VALUE:channel["cc1"]]buildConfigField"String","DEBUG_CHANNEL",channel["cc1"]versionCoderootProject.ext.android_version.ccVersionCodeversionNamerootProject.ext.android_version.ccVersionName}cc2{manifestPlaceholders=[CHANNEL_VALUE:channel["cc2"]]buildConfigField"String","DEBUG_CHANNEL",channel["cc2"]versionCoderootProject.ext.android_version.ccVersionCodeversionNamerootProject.ext.android_version.ccVersionName}cc3{manifestPlaceholders=[CHANNEL_VALUE:channel["cc3"]]buildConfigField"String","DEBUG_CHANNEL",channel["cc3"]versionCoderootProject.ext.android_version.ccVersionCodeversionNamerootProject.ext.android_version.ccVersionName}cc4{manifestPlaceholders=[CHANNEL_VALUE:channel["cc4"]]buildConfigField"String","DEBUG_CHANNEL",channel["cc4"]versionCoderootProject.ext.android_version.ccVersionCodeversionNamerootProject.ext.android_version.ccVersionName}}productFlavors{cc1{buildConfigField"String","DEBUG_CHANNEL",rootProject.ext.channel["cc1"]}cc2{buildConfigField"String","DEBUG_CHANNEL",rootProject.ext.channel["cc2"]}cc3{buildConfigField"String","DEBUG_CHANNEL",rootProject.ext.channel["cc3"]}cc4{buildConfigField"String","DEBUG_CHANNEL",rootProject.ext.channel["cc4"]}}
6.微信支付配置,注意微信登录及微信支付结果回调类WXEntryActivity和WXPayEntryActivity是在包名文件夹下的wxapi中,属于最外层的一级文件夹。
7.关于友盟配置签名文件,在app模块下的build.gradle中配置应用的签名文件
signingConfigs{debug{toreFilefile('jks文件地址')storePassword"*********"keyAlias"*****"keyPassword"*********"}release{storeFilefile('jks文件地址')storePassword"*******"keyAlias"*****"keyPassword"**********"}}
源码下载地址
1、所有资源仅供学习与参考,请学习后自行删除。本站不提供任何技术支持。
2、本站不保证资源的完整性、可用性、安全性。(单独付费源码除外)
3、如有侵犯您的版权,请及时联系我们,我们将下架处理。