赞
踩
从事Android开发久了不可避免的会接触对外接口的封装,下面本人就以自己写过的一个例子系统讲讲怎样对应用sdk的开发。
我们在与其他公司合作的时候,往往会有技术方面的协作,但我们又不想过多的暴露我们某些技术方面的细节,比如:ip地址、技术参数、核心算法。
于是我们会对这部分代码进行封装,这部分需要精通Java的设计模式。
下面上传我的项目:
新建一个Android工程,添加一个Model:musicdot。
musicdot是本人自己解析百度音乐的歌曲搜索请求实现的在线搜歌功能包。所以我将要对这部分代码进行封装打包,以达到隐藏具体搜索请求的目的。(由于本项目中用到的百度音乐搜索接口涉及侵权,暂不暴露)
下面贴代码:
public class PlayMusicPresenter {
private PlayMusicModle uModel;
public void getMusic(Context context, String content, final UUView uView) {
uModel = new PlayMusicModle();
uModel.getResult(context, content, new UCallBack() {
@Override
public void onSuccess(String content, int code) {
uView.showContent(content, code);
}
@Override
public void onFail(String error) {
uView.showError(error);
}
});
}
}

public class PlayMusicModle {
private UCallBack callBack;
public void getResult(Context context, String content, UCallBack uCallBack) {
callBack = uCallBack;
searchSong(content);
}
private void searchSong(final String musicName) {
new Thread(new Runnable() {
@Override
public void run() {
try {
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.addHeader("User-Agent", makeUA())
.url("搜索url" + musicName)
.build();
Response response

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。