# ZhuiShuReaderAndroidSdk **Repository Path**: kingreader/ZhuiShuReaderAndroidSdk ## Basic Information - **Project Name**: ZhuiShuReaderAndroidSdk - **Description**: 追书androidsdk - **Primary Language**: Android - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 2 - **Created**: 2018-06-08 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 追书神器Android SDK 说明文档 ### 项目介绍 追书神器SDK是为了让接入方更方便调用API接口而服务的产品。接入方只需要按照文档的要求申请对应参数和修改源码对应的位置,然后按照文档要求对接后即可实现书籍阅读和书籍浏览等功能。 ### 项目开发环境 1. IDE android studio 3.0.1 2. 构建 gradle 3.0.1 buildToolsVersion "26.0.2" 3. 编译 minSdkVersion 17 targetSdkVersion 25 ### 集成SDK 1. 接入SDK之前需要向我方商务或产品申请渠道ID和渠道名称,以便区分用户及充值分成。还有接入方应用的包名要给到我方进行备案,否则有些界面无法 正常显示或功能无法正常使用; 2. sdk使用sharesdk集成的qq、微信、新浪微博三方登录和分享,所以接入方需要去对应平台申请对应的参数; 3. 申请到qq、微信、新浪微博参数后,可参照sdk工程目录下assets文件夹里的ShareSDK.xml进行对应平台的appid和appkey的修改; 4. 申请到sharesdk平台的参数后,请修改sdk工程AndroidManifest.xml对应位置的key值和appsecret值,具体如下: ``` ` ` ``` #### 5.微信登录和分享的接入; ##### 第一步: 修改sdk工程的WxEntryActivity.java文件路径为您应用包名路径+"wxapi",WxEntryActivity.java文件里package为自己应用的package; ##### 第二步: 修改清单文件里的WXEntryActivity配置为你应用的包名路径: ``` ``` ** 注意事项: 此处的包名为你应用的appid,不是清单文件里的manifest节点package属性; 微信的登录和分享,均需要用应用的正式签名打包出apk才能测试;** #### 6.sdk项目根节点build.gradle和模块节点build.gradle配置,以下为需要必须配置: ZSReaderSDK模块节点的gradle: ``` `repositories { flatDir { dirs 'libs' } }` ``` ``` dependencies { compile "com.android.support:recyclerview-v7:${support_version}" compile "com.android.support:support-v4:${support_version}" compile "com.android.support:support-annotations:${support_version}" compile "com.android.support:appcompat-v7:${support_version}" compile 'in.srain.cube:ultra-ptr:1.0.11' compile 'com.nineoldandroids:library:2.4.0' compile(name: 'epubreader-release-v1.0', ext: 'aar') compile(name: 'comicsreader-release-v1.0', ext: 'aar') compile(name: 'zssdk-release-v1.0-20180607', ext: 'aar') compile 'com.facebook.stetho:stetho-okhttp3:1.3.1' compile 'com.facebook.fresco:fresco:0.12.0' } ``` ext { support_version="25.0.0" } support_version 可根据自己项目情况自行修改;' demo模块节点的gradle: ``` defaultConfig { manifestPlaceholders = [packge_name: applicationId] } repositories { flatDir { dirs project(':ZSReaderSDK').file('libs') } } dependencies { compile project(':ZSReaderSDK') } ``` 根节点gradle配置: ``` buildscript { repositories { google() jcenter() } } allprojects { repositories { google() jcenter() } } ``` #### 7.sdk依赖的aar库: ![输入图片说明](https://gitee.com/uploads/images/2018/0608/171741_7b21b348_1686217.png "屏幕截图.png") zssdk-release-v1.0-xxx.jar后面的日期会根据打包的时间变化; #### 8.代码接入 初始化: 参考sdk工程的DemoApplication.java初始化sdk,具体如下: ``` ` ZSReaderSDK.init(this,"追书分配的渠道ID","追书分配的渠道名");` this为当前application对象; ``` 调用阅读: sdk书架目前分为九宫格形式和列表形式; 登录界面和绑定手机界面的ICON,可以自定义,默认值为当前app的启动图标,建议接入方设计一张ICON; 默认视图看书调用: ``` `` ZSReaderSDK.get().readBook(DemoActy.this);`` ``` 自定义视图看书调用: ``` ` ZSReaderSDK.UIConfiguration uiConfiguration = new ZSReaderSDK.UIConfiguration(); uiConfiguration.setBookshelfUIGridview(true); uiConfiguration.setLoginUILogoResId(R.mipmap.ic_launcher); ZSReaderSDK.get().readBook(DemoActy.this,uiConfiguration);` ``` #### 9.布局自定义 sdk工程的布局资源文件已提供源码,接入方如需要修改,可参照ZSReaderSdK模块清单文件里配置的activity节点上方的注释找到SDKUI 界面对应的activity的布局文件。 如: `` com.ushaqi.zhuishushenqi.ui.search.SearchActivity 这个activity的布局文件一般命名为activity_search.xml。`` 其他activity的布局都可遵循此规则查找。 # 特别注意:修改资源切不可修改资源的ID或名称,否则代码中找不到该资源,程序会崩溃。修改完成,需要进行测试,看是否有无问题才方可上线。 #### 10.关于混淆 请参考sdk工程的zhuishusdk-proguard-rules.rpo文件的混淆配置,如果是已有自己的工程请复制混淆规则至自己的工程的proguard-rules.pro,没有则无视。 #### 接入可能会遇到的问题 据有的接入方的开发人员在接入sdk时会报如下错误: ![ [图片]](https://images.gitee.com/uploads/images/2018/0808/105440_4d44f0b0_1686217.png "屏幕截图.png") 解决方法如下: 分别在主工程和lib工程里面的build.gradle的android{}节点都加入 enforceUniquePackageName = false即可。 #### 11.建议 如果接入方直接在sdk工程修改打包app,可以直接修改以上需要修改的地方,当然包名和app的签名keystore需要自行准备,不要和追书的包名 一样否则会出现装有追书app的手机无法安装你的app;app icon自行准备,应用的启动界面可以自行定义; 如果接入方已有自己的工程,请在修改以上地方后,把以上涉及到的地方复制到你应用的工程对应的位置上; sdk工程的第三方登录和分享是无法正常使用,因为缺少真实的第三方参数和签名信息,接入方需要申请到参数并按上面要求修改后才能测试功能是否正常; 至此完毕,谢谢观看! 如果问题请联系我,联系方式见下方技术支持. ### 技术支持 技术支持开发人员QQ:405814832(曾程-android开发) ### 申明 App名字请避免使用“开卷有益”、“开卷小说”、“追书神器”、“追书小说”等追书神器团队的相关或相似App名称。另外请不要侵犯其他小说类App的相关权益,请各位接入方注意。