• 文章介绍
  • 评价建议
  • 温馨提示:本源码提供给大家学习研究借鉴美工之用,请勿用于商业和违法用途,无任何技术支持!

    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文件中配置阿里热修复的相关信息:

    @Overrideprotected void attachBaseContext(Context base) {super.attachBaseContext(base);// 如果需要使用MultiDex,需要在此处调用。MultiDex.install(this);initSophix();}private void initSophix() {String appVersion = "0.0.0";try {appVersion = this.getPackageManager().getPackageInfo(this.getPackageName(), 0).versionName;} catch (Exception e) {}final SophixManager instance = SophixManager.getInstance();instance.setContext(this).setAppVersion(appVersion).setSecretMetaData("appkey", "appsecret", "appsecretToken").setEnableDebug(true).setEnableFullLog().setPatchLoadStatusStub(new PatchLoadStatusListener() {@Overridepublic void onLoad(final int mode, final int code, final String info, final int handlePatchVersion) {if (code == PatchStatus.CODE_LOAD_SUCCESS) {Log.i(TAG, "sophix load patch success!");} else if (code == PatchStatus.CODE_LOAD_RELAUNCH) {// 如果需要在后台重启,建议此处用SharePreference保存状态。Log.i(TAG, "sophix preload patch success. restart app to make effect.");}}}).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><action android:name="android.intent.action.VIEW" /><category android:name="android.intent.category.DEFAULT" /><category android:name="android.intent.category.BROWSABLE" /><data android:scheme="tencentAPPKEY" /></intent-filter></activity>在AndroidManifest.xml还需要配置友盟的渠道/*** Channel ID用来标识App的推广渠道,作为推送消息时给用户分组的一个维度*/<meta-dataandroid:name="UMENG_CHANNEL"android:value="${CHANNEL_VALUE}" />

    3.在Android Studio工程中的App模块中的BookStoreApplication文件中,配置推送相关功能。小米推送:

    private fun initMiuiPush() {if (shouldInit()) {MiPushClient.registerPush(this, "AppID", "AppKey")}// 打开Logval newLogger = object : LoggerInterface {override fun setTag(tag: String) {// ignore}override fun log(content: String, t: Throwable) {Log.d(TAG, content, t)}override fun log(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 需要注册的应用下载服务 | Access HMSSDK need to register app download service*/<serviceandroid:name="com.huawei.updatesdk.service.deamon.download.DownloadService"android:exported="false" /><activity android:name=".book_push.HuaWeiReceiverActivity"><intent-filter><action android:name="android.intent.action.VIEW" /><category android:name="android.intent.category.DEFAULT" /><dataandroid:host="自定义域名"android:path="/地址"android:scheme="customscheme" /></intent-filter></activity>

    4.在CommenTag文件中,配置广点通广告:

    const val AD_APPKEY = "******"// 开屏页广告位const val AD_SPLASH_KEY = "******"//阅读页底部广告位const val AD_BANNER_KEY = "******"//阅读页章节末尾广告位const val AD_NATIVE_IMAGE = "******"//首页banner最后一页展示广告位const val AD_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"]versionCode rootProject.ext.android_version.ccVersionCodeversionName rootProject.ext.android_version.ccVersionName}cc2 {manifestPlaceholders = [CHANNEL_VALUE: channel["cc2"]]buildConfigField "String", "DEBUG_CHANNEL", channel["cc2"]versionCode rootProject.ext.android_version.ccVersionCodeversionName rootProject.ext.android_version.ccVersionName}cc3 {manifestPlaceholders = [CHANNEL_VALUE: channel["cc3"]]buildConfigField "String", "DEBUG_CHANNEL", channel["cc3"]versionCode rootProject.ext.android_version.ccVersionCodeversionName rootProject.ext.android_version.ccVersionName}cc4 {manifestPlaceholders = [CHANNEL_VALUE: channel["cc4"]]buildConfigField "String", "DEBUG_CHANNEL", channel["cc4"]versionCode rootProject.ext.android_version.ccVersionCodeversionName rootProject.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 {toreFile file('jks文件地址')storePassword "*********"keyAlias "*****"keyPassword "*********"}release {storeFile file('jks文件地址')storePassword "*******"keyAlias "*****"keyPassword "**********"}}

     

    郑重声明:

    本站所提供的“

    摇钱树CMS免费开源小说APP系统带后端

    ”资源来自于网络,版权争议与本站无关,版权归原创者所有!仅限用于学习和研究目的,不得将上述内容资源用于商业或者非法用途,否则,一切后果请用户自负。

    1. 本站所有内容均由互联网收集整理、网友上传,仅供大家参考、学习,不存在任何商业目的与商业用途。

    2. 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。

    3. 如果你也有好源码或者教程,可以到审核区发布,分享有魔币奖励和额外收入!

    4. 不保证所有资源都完整可用,不排除存在加密、BUG、需要授权或者残缺的可能,由于资源的特殊性,下载后一律不予退货。

    5. 魔方资源网不提供任何技术支持及安装服务,请自行做好评估。

    6. 如有链接无法下载、失效或广告宣传,请联系客服QQ:256382490 尽快为您处理!

    7. 本站所有的资源并非收费,用户只要登陆,签到后就可以获取相应魔币用于兑换用于学习参考使用,所有的会员费用网站用来做站点的运维费用,所需的魔币不是资源本身的价值,和资源没直接关系!

    8. 如遇到加密压缩包,默认解压密码为"www.mofangmall.com或mofangmall.com",如遇到无法解压的请联系管理员!

    9. 如无法链接失效或侵犯版权,请先联系我们点击这里给我发消息256382490@qq.com

    发表评论