ActivityJumpUtil.java
3.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
package com.cnlive.gundam.main.utils;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
import android.widget.Toast;
import com.cnlive.gundam.R;
import com.cnlive.gundam.main.model.ActiveInfo;
import com.cnlive.gundam.main.model.ActivePlayInfo;
import com.cnlive.gundam.main.model.VideoListProgram;
import com.cnlive.gundam.main.network.RetrofitUtil;
import com.cnlive.gundam.main.network.util.SignUtil;
import com.cnlive.gundam.video.activity.PlayerActivity;
import com.cnlive.gundam.video.view.VideoView;
import com.cnlive.libs.util.Config;
import java.util.HashMap;
import java.util.Map;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
/**
* Created by Lynn on 5/27/2017.
*/
public class ActivityJumpUtil {
//活动视频页面跳转
public static void jumpByProgramType(final Context context, ActiveInfo activeInfo) {
if (context == null || activeInfo == null)
return;
Map<String, String> params = new HashMap<>();
params.put("appId", Config.getAppId());
params.put("activityId", activeInfo.getActivityId());
RetrofitUtil.getApiService().getActivityPlayInfo(SignUtil.getSignParamM(context, params)).enqueue(new Callback<ActivePlayInfo>() {
@Override
public void onResponse(Call<ActivePlayInfo> call, Response<ActivePlayInfo> response) {
if (response.isSuccessful()) {
ActivePlayInfo info = response.body();
if (info != null && "0".equals(info.getCode())) {
jumpByStatus(context, info.getData());
} else {
Toast.makeText(context, context.getString(R.string.request_state_error), Toast.LENGTH_LONG).show();
}
}
}
@Override
public void onFailure(Call<ActivePlayInfo> call, Throwable t) {
Log.e("11111111111111", "onFailure: "+call.request().toString() );
Toast.makeText(context, context.getString(R.string.request_state_error), Toast.LENGTH_LONG).show();
}
});
}
private static void jumpByStatus(Context context, ActivePlayInfo.ActiveModel model) {
if (model == null) return;
if (model.getActivityStatus() == 1) {//直播中
jumpByProgramType(context, new VideoListProgram(model.getChannelId(), model.getActivityName(), model.getCoverImgUrl(), model.getRates(), VideoView.TYPE_UGC_LIVE));
} else if (model.getActivityStatus() == 3) {//已结束
jumpByProgramType(context, new VideoListProgram(model.getActivityId(), model.getActivityName(), model.getCoverImgUrl(), model.getActivityName(), model.getRates(), VideoView.TYPE_UGC_VOD));
} else {
Toast.makeText(context, context.getString(R.string.request_state_play_error), Toast.LENGTH_LONG).show();
}
}
//视频页面跳转
public static void jumpByProgramType(final Context context, final VideoListProgram program) {
if (context == null || program == null)
return;
Intent intent = new Intent(context, PlayerActivity.class);
intent.putExtra("program", program);
context.startActivity(intent);
}
}