123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226 |
- package com.guangzhou.haochuan.jxtv.activity;
- import android.app.Activity;
- import android.app.AlertDialog;
- import android.content.DialogInterface;
- import android.content.Intent;
- import android.graphics.drawable.Drawable;
- import android.os.Bundle;
- import android.os.Handler;
- import android.os.Looper;
- import android.util.Log;
- import android.widget.RelativeLayout;
- import com.guangzhou.haochuan.jxtv.model.MiniVideo;
- import com.guangzhou.haochuan.jxtv.util.FileUtil;
- import com.guangzhou.haochuan.jxtv.util.LocalStore;
- import com.guangzhou.haochuan.jxtv.util.OttLoginUtil;
- import com.guangzhou.haochuan.jxtv.R;
- import com.guangzhou.haochuan.jxtv.util.ScreenUtil;
- import com.guangzhou.haochuan.jxtv.viewModel.MiniVideoViewModel;
- import com.ystgame.sdk.billing.api.GameInterface;
- import com.ystgame.sdk.billing.api.MonthAuthResult;
- import java.io.File;
- import java.util.Observable;
- import java.util.Observer;
- public class LoginActivity extends Activity implements Observer {
- //电信计费参数
- private int appId = 252; //唯一用户标识,在AndroidMainfest.xml里的Meta-Data里设置
- private String appName = "电竞部落";
- private String providerName = "广州浩传"; //内容提供商
- private String serviceTel = "020-38468029";
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_login);
- init();
- initYst();
- }
- private void init(){
- RelativeLayout background = findViewById(R.id.back_image);
- //设置背景图片
- String path = FileUtil.getInstance().getLoadingImageSavePath(this, ScreenUtil.getInstance().getDpiType(this));
- File file = new File(path);
- if(file.exists()){
- background.setBackground(Drawable.createFromPath(path));
- }
- }
- private void initYst(){
- LoginActivity.this.runOnUiThread(new Runnable() {
- @Override
- public void run() {
- try{
- GameInterface.initializeApp(LoginActivity.this,appId,appName,providerName,serviceTel,new GameInterface.IAppUidCallback(){
- @Override
- public void onResult(int i, String s) {
- switch (i){
- case 0:
- Log.d("Telecom","init success");
- auth();
- //Toast.makeText(TelecomPayActivity.this,"易视腾初始化成功",Toast.LENGTH_SHORT).show();
- break;
- default:
- new AlertDialog.Builder(LoginActivity.this)
- .setTitle("错误")
- .setMessage("初始化失败,点击'确定'退出" )
- .setNegativeButton("确定", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- LoginActivity.this.finish();
- }
- }).show();
- break;
- }
- }
- });
- }catch (Exception e){
- e.printStackTrace();
- }
- }
- });
- }
- //包月鉴权(此函数还未用到,因为现在还是从后台获取用户是否包月状态,后续后台需要更改,再用)
- protected void auth()
- {
- try{
- // TODO Auto-generated method stub
- GameInterface.monthAuth(this,new GameInterface.IAuthCallback()
- {
- @Override
- public void onResult(final int code, final String msg)
- {
- // TODO Auto-generated method stub
- switch(code)
- {
- case MonthAuthResult.AUTH_SUCCESS:
- //鉴权成功 用户已购买...
- LocalStore.getInstance().storeIsVip(LoginActivity.this,true);
- OttLogin();
- break;
- default:
- // 其他错误,服务器端处理请求失败
- LocalStore.getInstance().storeIsVip(LoginActivity.this,false);
- OttLogin();
- break;
- }
- }
- });
- }catch (Exception e){
- e.printStackTrace();
- }
- }
- private void OttLogin(){
- OttLoginUtil.getInstance().init(this, new OttLoginUtil.OnLoginListener() {
- @Override
- public void OnSuccess() {
- LocalStore.getInstance().storeLoginOrNot(LoginActivity.this,true);
- //创建用户
- String uId= String.valueOf(OttLoginUtil.getInstance().getDeviceId());
- //Toast.makeText(LoginActivity.this,"uid:" + uId,Toast.LENGTH_SHORT).show();
- if(uId.equals("0")){
- uId = "13";
- }
- LocalStore.getInstance().storeUserId(LoginActivity.this,uId);
- String templateId = String.valueOf(OttLoginUtil.getInstance().getTemplateID());
- String platformId = String.valueOf(OttLoginUtil.getInstance().getPlatformID());
- String mac = String.valueOf(OttLoginUtil.getInstance().getMac());
- LocalStore.getInstance().storeMac(LoginActivity.this,mac);
- //new CreateUserViewModel(uId,templateId,platformId,mac).addObserver(LoginActivity.this);
- //请求迷你视频窗信息
- new MiniVideoViewModel(ScreenUtil.getInstance().getDpiType(LoginActivity.this)).addObserver(LoginActivity.this);
- }
- @Override
- public void onFail(String msg) {
- new AlertDialog.Builder(LoginActivity.this)
- .setTitle("错误")
- .setMessage("验证失败:" + msg + "\n" + "点击'确定'退出" )
- .setNegativeButton("确定", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- LoginActivity.this.finish();
- }
- }).show();
- LocalStore.getInstance().storeLoginOrNot(LoginActivity.this,false);
- //new CreateUserViewModel("","","","").addObserver(LoginActivity.this);
- //请求迷你视频窗信息
- new MiniVideoViewModel(ScreenUtil.getInstance().getDpiType(LoginActivity.this)).addObserver(LoginActivity.this);
- }
- });
- }
- private void delayTransMain(){
- new Thread(){
- public void run(){
- Looper.prepare();
- new Handler().postDelayed(new Runnable() {
- @Override
- public void run() {
- Intent intent = new Intent(LoginActivity.this,DjblWebActivity.class);
- LoginActivity.this.startActivity(intent);
- LoginActivity.this.finish();
- }
- },2000);
- Looper.loop();
- }
- }.start();
- }
- private void delayTransStartVideo(){
- new Thread(){
- public void run(){
- Looper.prepare();
- new Handler().postDelayed(new Runnable() {
- @Override
- public void run() {
- Intent intent = new Intent(LoginActivity.this,StartVideoActivity.class);
- LoginActivity.this.startActivity(intent);
- LoginActivity.this.finish();
- }
- },2000);
- Looper.loop();
- }
- }.start();
- }
- @Override
- public void update(Observable o, Object arg) {
- if(o instanceof MiniVideoViewModel){
- MiniVideoViewModel miniVideoViewModel = (MiniVideoViewModel)o;
- MiniVideo miniVideo = miniVideoViewModel.getMiniVideo();
- if(miniVideo.code == 0){
- MiniVideo.MiniVideoData miniVideoData = miniVideo.data;
- int statusCode = -10;
- if(miniVideoData != null){
- statusCode = miniVideoData.status;
- }
- switch(statusCode){
- case 10:
- delayTransStartVideo();
- break;
- case -10:
- delayTransMain();
- break;
- default:
- delayTransMain();
- break;
- }
- }
- }
- }
- }
|