zoukankan      html  css  js  c++  java
  • 团队冲刺第七天--校园百晓生(STDeverything)

    摘要:获取了第三方登录返回数据的openid、昵称和40*40像素头像(以地址形式保存),并将其存入云服务器数据库,由于一天满课,实现功能还需完善。

    代码:

    QQToken qqToken = mTencent.getQQToken();
                UserInfo info = new UserInfo(getApplicationContext(), qqToken);
                userId = mTencent.getOpenId();//获取唯一标识符
                Log.v("userId",userId);
                //    info.getUserInfo(new BaseUIListener(this,"get_simple_userinfo"));
                info.getUserInfo(new IUiListener() {
                    @Override
                    public void onComplete(Object o) {
                        //用户信息获取到了
                        try {
    
                            Toast.makeText(getApplicationContext(), ((JSONObject) o).getString("nickname")+((JSONObject) o).getString("gender"), Toast.LENGTH_SHORT).show();
                            Log.v("UserInfo",o.toString());
                            username=((JSONObject) o).getString("nickname");//获取昵称
                            Log.v("username",username);
                            userimage=((JSONObject) o).getString("figureurl_qq_1");//获取头像
                            Log.v("userimage",userimage);
                            Intent intent1 = new Intent(Login.this,MainActivity.class);
                            startActivity(intent1);
                            finish();
                        } catch (JSONException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
    获取用户基本信息
     private final static String requrl="http://#/STDEverything/login_servlet";
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
            setContentView(R.layout.activity_register);
            FloatingActionButton register_btn = findViewById(R.id.register_btn);
            name_text=findViewById(R.id.name);
            pwd_text=findViewById(R.id.pwd);
            handler=new RegisterHandler(this);
            register_btn.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    String name=name_text.getText().toString();
                    String pwd=pwd_text.getText().toString();
                    final String reqdata="method=login&name="+name+"&pwd="+pwd+"";
                    new Thread(new Runnable() {
                        @Override
                        public void run() {
                            try {
                                JSONObject jsonObject=new JSONObject(String.valueOf(HttpUtil.sendPost(requrl,reqdata)));
                                Message msg=new Message();
                                msg.what=100;
                                msg.obj=jsonObject;
                                handler.sendMessage(msg);
                            } catch (JSONException e) {
                                e.printStackTrace();
                            }
                        }
                    }).start();
                }
            });
    
        }
    
        static class RegisterHandler extends Handler{
    
            private final WeakReference<Register> mcontext;
    
            RegisterHandler(Register context){
                mcontext=new WeakReference<>(context);
            }
            @Override
            public void handleMessage(@NonNull Message msg) {
                super.handleMessage(msg);
                if(msg.what==100){
                    JSONObject jsonObject= (JSONObject) msg.obj;
                    try {
                        if(jsonObject.get("name").equals("yes"))
                            Toast.makeText(mcontext.get(),"用户名已存在",Toast.LENGTH_SHORT).show();
                        else if(jsonObject.get("name").equals("no")){
                            new Thread(new Runnable() {
                                @Override
                                public void run() {
                                    String name=mcontext.get().name_text.getText().toString();
                                    String pwd=mcontext.get().pwd_text.getText().toString();
                                    final String reqdata="method=register&name="+name+"&pwd="+pwd+"";
                                    HttpUtil.sendPost(requrl,reqdata);
                                    sendEmptyMessage(888);
                                }
                            }).start();
                        }
                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
    存入云数据库(待完善)

    明天加油!

  • 相关阅读:
    POJ 1703 Find them, Catch them
    POJ 2236 Wireless Network
    POJ 2010 Moo University
    POJ 2184 Cow Exhibition
    POJ 3280 Cheapest Palindrome
    POJ 3009 Curling 2.0
    POJ 3669 Meteor Shower
    POJ 2718 Smallest Difference
    POJ 3187 Backward Digit Sums
    POJ 3050 Hopscotch
  • 原文地址:https://www.cnblogs.com/dd110343/p/12748778.html
Copyright © 2011-2022 走看看