MainActivity.java 3.26 KB
package com.gumptech.loginsdk.sample;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

import com.gumptech.sdk.GumpPreference;
import com.gumptech.sdk.GumpSDK;

public class MainActivity extends Activity implements GumpSDK.Callback {

	private TextView userInfo;

	private Button btnLogout;
	private Button btnBind;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		userInfo = (TextView) findViewById(R.id.user_info);
		btnLogout = (Button) findViewById(R.id.logout);
		btnBind = (Button) findViewById(R.id.bind);
		btnLogout.setOnClickListener(new View.OnClickListener() {

			@Override
			public void onClick(View v) {
				GumpSDK.logout(MainActivity.this, MainActivity.this);
			}
		});
		btnBind.setOnClickListener(new View.OnClickListener() {

			@Override
			public void onClick(View v) {
				GumpSDK.boundMail(MainActivity.this);
			}
		});
		findViewById(R.id.pay).setOnClickListener(new View.OnClickListener() {

			@Override
			public void onClick(View v) {
				Bundle payInfo = new Bundle();
				payInfo.putString("nick", "thi");
				payInfo.putString("product", "元宝");
				payInfo.putFloat("amount", 0.0f);
				payInfo.putString("extraInfo", "This is demo!");
				payInfo.putString("serverId", "B4003");
				payInfo.putString("roleId", "10010");
				GumpSDK.pay(MainActivity.this, payInfo);
			}
		});
		GumpSDK.init("10014", "7b9d31aa17b849b238ab79cef0733041", "301596413332339", "1000");
		GumpSDK.start(this);
	}

	@Override
	protected void onActivityResult(int requestCode, int resultCode, Intent data) {
		Log.d("Main", "activity requestCode:" + requestCode + ",resultCode:" + resultCode);
		if (requestCode == GumpSDK.LOGIN_REQUEST_CODE) {
			if (resultCode == RESULT_OK) {
				String uid = data.getStringExtra("userId");
				int accountType = data.getIntExtra("accountType", -1);
				String sessionkey = data.getStringExtra("sessionKey");
				userInfo.setText("userid:" + uid + ",accountType:" + accountType + ",sessionKey:" + sessionkey);
				btnLogout.setVisibility(View.VISIBLE);
				if (accountType == GumpPreference.ACCOUNT_TYPE_QUICK_REG)
					btnBind.setVisibility(View.VISIBLE);
			} else if (resultCode == RESULT_CANCELED) {
				Toast.makeText(this, "operate be canceled", Toast.LENGTH_SHORT).show();
			}
		} else if (requestCode == GumpSDK.PAY_REQUEST_CODE) {
			if (resultCode == RESULT_OK) {
				int code = data.getIntExtra("code", -1);
				String msg = data.getStringExtra("msg");
				int orderId = data.getIntExtra("orderId", -1);
				String extraInfo = data.getStringExtra("extraInfo");
				Toast.makeText(this, "pay result: " + code + "," + msg + ",orderId:" + orderId + ",extraInfo:" + extraInfo, Toast.LENGTH_SHORT).show();
			} else if (resultCode == RESULT_CANCELED) {
				Toast.makeText(this, "operate be canceled", Toast.LENGTH_SHORT).show();
			}
		}
		super.onActivityResult(requestCode, resultCode, data);
	}

	@Override
	public void onLogout() {
		btnLogout.setVisibility(View.GONE);
		if (btnBind.getVisibility() == View.VISIBLE)
			btnBind.setVisibility(View.GONE);
		userInfo.append(" is logout");
	}

}