功能介绍

FEED SDK 接入外部优质新闻源(目前已接入今日头条),为C计划应用提供多样化的产品内容,增加用户打开和使用时长,以提升用户留存率。 支持返回支持FEED流广告,可用于实现快速广告变现等业务支持。

具体功能如下,可支持部分定制:

1、显示天气和日期 (可选,默认显示)

2、显示今日头条提供的 推荐、热点、视频、本地、 旅游、 美食、养生、健康、育儿、星座等30+个频道资讯。(根据业务情况可使用部分频道作为默认频道,默认提供所有频道)

3、支持接入方在指定位置加入自定义频道(提供频道名称、频道位置、跳转链接)

4、可支持用户自己编辑频道(可选,用户编辑信息仅客户端缓存,重装后显示默认频道。默认支持 )

5、支持用户管理频道,用户可不感兴趣某类内容

6、支持自定义字体大小

7、支持返回支持FEED流广告,适用需要快速变现的业务

需要定制的部分,需要在对接时提前沟通,便于我们进行相关配置

对接人:张香桃 倪梦经

接入指南

Feedsdk 数据打点依赖aio sdk,在接入此sdk 时必须同时接入aio sdk

1、配置AndroidManifest.xml和build.gradle

在 AndroidManifest.xml 中添加以下权限,如果已添加则必须再次添加:


<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" /><!-- 适配Android8.0需要加此权限 -->
 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

在build.gradle 中添加以下依赖,如果已添加则无须再次添加:

implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.google.code.gson:gson:2.6.2'
implementation 'com.squareup.okhttp3:okhttp:3.10.0'
//RecyclerView
implementation 'com.android.support:recyclerview-v7:27.1.1'
implementation 'com.android.support:design:27.1.1'
//SmartRefreshLayout
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.0.4-7'

2、导入aar包

导入aar 包添加引用

SDK wk_ant_feed_sdk_1.0.3.aar

版本更新记录

版本号 更新内容 发布时间
1.0.2 1)提供设置字体接口
2)天气显示可后台配置式
3)支持返回支持FEED流广告
2019-05-13
1.0.3 更换域名 2019-07-09
  repositories {
    flatDir {
        dirs 'libs' // feedsdk aar所在目录
    }
  }
dependencies {
   implementation(name: 'wk_ant_feed_sdk_1.0.2', ext: 'aar')
 }

3、代码接入

初始化sdk

申请APPID,同时会获得AES KEY,AES IV,MD5 KEY这些密钥,如果本身已经有,可以忽略,subAppid目前不用传 或者传""


AntNewsSDK.init(this, appid,subAppid,aeskey,aesIv,mdkey);

接入方式一:

展现页面 activity 继承 AntFeedActivity

接入方式二:

直接在自己的view 或者布局xml文件 中引用 com.lantern.antnews.widget.AntFeedView, 并在代码中 findViewById

4、适配Anroid7.0

如果您的应用需要适配Anroid7.0以及上系统,请在AndroidManifest中添加如下代码:

<provider
 android:name="com.lantern.antnews.core.managers.models.provider.AntDownloadFileProvider"
 android:authorities="{你工程的applicationId}.antnews.sdk.fileprovider"
 android:exported="false"
 android:grantUriPermissions="true">
 <meta-data
 android:name="android.support.FILE_PROVIDER_PATHS"
 android:resource="@xml/ant_dm_file_paths" />
</provider>

在res/xml目录下,新建一个xml文件ant_dm_file_paths,在该文件中添加如下代码

<?xml version="1.0" encoding="utf-8"?>
<paths>
 <root-path
 name="download"
 path="." />
</paths>

5、图片加载

在接口 AntImageLoaderInterface方法onImageLoader中实现图片加载,图片加载需支持https,示例如下:
    AntInterfaceManager.getInstance().setImageLoaderInterface(new AntImageLoaderInterface() {
       @Override
       public void onImageLoader(ImageView imageView, String url) {
        // TODO:实现图片加载逻辑
    }
     });

6、文章列表字体大小设置

在接app初始化之前调用如下代码,, 示例如下:

   //0.85 小, 1 标准大小, 1.15 大,1.3 超大 ,1.45 特大(建议字号,可自定义,fontSize 为字体倍数)

    AntManager.getInstance().setFontScale((float) fontSize);

7、销毁

在退出activity 或者退出app 的时候 调用如下示例:
    @Override
   protected void onDestroy() {
       AntNewsSDK.destroy();
       super.onDestroy();

     }

8、混淆proguard设置

如果应用打包时进行了混淆,"必须"加入如下混淆配置:


 -keep class com.lantern.antnews.** {*;}

 -keep class com.androidquery.** {*;}

9、调试

   AntBuildConfig.DEBUG = true; //线上环境
   AntBuildConfig.isDEBUGLOG = true;//打开调试log