Android应用开发之喜马拉雅FM sdk使用
白羽 2019-01-08 来源 :网络 阅读 2134 评论 0

摘要:本文将带你了解Android应用开发喜马拉雅FM sdk使用,希望本文对大家学Android有所帮助。

    本文将带你了解Android应用开发喜马拉雅FM sdk使用,希望本文对大家学Android有所帮助。


喜马拉雅FM   sdk使用。

1.喜马拉雅开放平台注册/审核后,在“我的应用”中创建应用

2.添加内容信息

3.我使用的是android   studio androidmainfest中配置

权限:


   

<uses-permission android:name="android.permission.INTERNET">

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE">

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE">

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE">

<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"></uses-permission></uses-permission></uses-permission></uses-permission></uses-permission>


   

<meta-data android:name="app_key" android:value="申请应用中的appkey">

 

        <meta-data   android:name="pack_id" android:value="申请应用中的包名"></meta-data></meta-data>

   

service/receiver:


   

<service android:exported="true" android:name="com.ximalaya.ting.android.opensdk.player.service.XmPlayerService"   android:process=":player">

        </service>

 

        <receiver   android:exported="true" android:name="com.ximalaya.ting.android.opensdk.player.receive.PlayerReceiver"   android:process=":player">

            <intent-filter>

                 

                 

                 

                 

                 

            </action></action></action></action></action></intent-filter>

        </receiver>

 

        <receiver   android:exported="true" android:name="com.ximalaya.ting.android.opensdk.player.receive.WireControlReceiver"   android:process=":player">

 

        <receiver   android:exported="true" android:name="com.ximalaya.ting.android.opensdk.test.reciver.MyPlayerReceiver"   android:process=":player">

            <intent-filter>

                 

            </action></intent-filter>

        </receiver></receiver>

   



app_key:开放平台应用公钥app_secret:开放平台应用私钥,请务必加密存储,切勿泄露pack_id:客户端包名,对Android客户端是apk包名

4.添加包-放入项目lib中

 

还有这个

 

build.gradle   (表油德。哥软斗)

  

android {

    ...

    productFlavors{   

        arm{   

            ndk{   

                abiFilters  "armeabi" ,"armeabi-v7a"

            } 

        } 

    } 

}

   


5.混淆

 

-dontwarn   okio.**

-keep   class   okio.** {   *;}

 

-dontwarn   okhttp3.**

-keep   class   okhttp3.** { *;}

 

-dontwarn com.google.gson.**

-keep   class   com.google.gson.** {   *;}

 

-dontwarn   android.support.**

-keep   class   android.support.** {   *;}

 

-dontwarn   com.ximalaya.ting.android.player.**

-keep class com.ximalaya.ting.android.player.** { *;}

 

-dontwarn   com.ximalaya.ting.android.opensdk.**

-keep interface com.ximalaya.ting.android.opensdk.**   {*;}

-keep   class   com.ximalaya.ting.android.opensdk.**   { *;   }

   


6.


application类中在oncreate中初始化喜马拉雅参数。


   

CommonRequest.getInstanse().init(context, appSecret);

   


然后我自己定义了一个service,来用于初始化,播放,暂停   (由于项目功能要求不高,所以这一块就实现了2个实施功能)

2部分内容如下。

 

application   片段

 


   

private void initXmly()   {

   


   

private RequestTracker requestTracker = new RequestTracker() {

        @Override

        public void onWaiting(RequestParams params)   {

            Logger.log("TingApplication : onWaiting   " +   params);

        }

 

        @Override

        public void onStart(RequestParams params)   {

            Logger.log("TingApplication : onStart   " +   params);

        }

 

        @Override

        public void onRequestCreated(UriRequest request) {

            Logger.log("TingApplication : onRequestCreated   " +   request);

        }

 

        @Override

        public void onSuccess(UriRequest request, Object result)   {

            Logger.log("TingApplication : onSuccess   " + request +   "     result = " +   result);

        }

 

        @Override

        public void onRemoved(UriRequest request)   {

            Logger.log("TingApplication : onRemoved "   +   request);

        }

 

        @Override

        public void onCancelled(UriRequest request)   {

            Logger.log("TingApplication : onCanclelled   " +   request);

        }

 

        @Override

        public void onError(UriRequest request, Throwable ex,   boolean   isCallbackError)   {

            Logger.log("TingApplication : onError " + request + "   ex =   " + ex +   "   isCallbackError =   " +   isCallbackError);

        }

 

        @Override

        public void onFinished(UriRequest request)   {

            Logger.log("TingApplication : onFinished   " +   request);

        }

    };

  


本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之Android频道!


本文由 @白羽 发布于职坐标。未经许可,禁止转载。
喜欢 | 2 不喜欢 | 0
看完这篇文章有何感觉?已经有2人表态,100%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved