Пример #1
0
        void DoLogin(object sender, EventArgs e)
        {
            var uername  = m_username.Text;
            var password = m_password.Text;
            //do some check ...

            var buider = new Android.Support.V7.App.AlertDialog.Builder(this);

            buider.SetTitle("选择联系人");
            var names = DataProvider.AllUsers.ConvertAll((input) => { return(input.Name); });

            buider.SetItems(names.ToArray(), (object s, DialogClickEventArgs args) =>
            {
                IDialogInterface dialog = s as IDialogInterface;
                if (dialog != null)
                {
                    dialog.Dismiss();
                    FindViewById(Resource.Id.wait_view).Visibility  = Android.Views.ViewStates.Visible;
                    FindViewById(Resource.Id.login_form).Visibility = Android.Views.ViewStates.Gone;
                    UserInfo userInfo = DataProvider.RequestLogin(args.Which);
                    string token      = DataProvider.GetTokenByUser(userInfo);
                    AppConfig.Instance.UserLogin(userInfo, token);
                    RongIM.Connect(token, new ConnectCallback(this));
                }
            });
            buider.Show();
        }
Пример #2
0
        public override void OnCreate()
        {
            base.OnCreate();
            RongIMRes.Init();

            if (ApplicationInfo.PackageName.Equals(GetCurProcessName(ApplicationContext)) || "io.rong.push".Equals(GetCurProcessName(ApplicationContext)))
            {
                RongIM.Init(this);
            }
        }
Пример #3
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            AppConfig.Init(this);
            RongIM.Init(ApplicationContext);
            // Create your application here
            SetContentView(Resource.Layout.activity_login);
            m_username = FindViewById <AutoCompleteTextView>(Resource.Id.username);
            m_password = FindViewById <EditText>(Resource.Id.username);
            m_login    = FindViewById <Button>(Resource.Id.sign_in_button);

            m_login.Click += DoLogin;
        }
Пример #4
0
        void OnUserSelected(object sender, EventArgs args)
        {
            View view = sender as View;

            if (view != null)
            {
                currentUser = view.Tag == null ? user1 : (UserInfo)view.Tag;
                FindViewById(Resource.Id.action_panel).Visibility = ViewStates.Invisible;
                FindViewById(Resource.Id.login_panel).Visibility  = ViewStates.Invisible;
                RongIM.Connect(currentUser.token, new Callback(this));
                title.Text = "---登陆中---";
            }
        }
Пример #5
0
 private void Connect(string token)
 {
     if (ApplicationInfo.PackageName.Equals(App.GetCurProcessName(ApplicationContext)))
     {
         RongIM.Connect(token, new RongIMClientCallback
         {
             TokenIncorrect = (e, s) =>
             {
                 Log.Debug("MainActivity", "--TokenIncorrent");
             },
             Success = (e, s) =>
             {
                 Log.Debug("MainActivity", "-Success");
             },
             Error = (e, s) =>
             {
                 Log.Debug("MainActivity", "Error");
             }
         });
     }
 }
Пример #6
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            RongIM.Init(ApplicationContext);
            // Set our view from the "main" layout resource
            SetContentView(Resource.Layout.Main);

            // Get our button from the layout resource,
            // and attach an event to it
            title = FindViewById <TextView>(Resource.Id.title);
            Button button1     = FindViewById <Button>(Resource.Id.login_1);
            Button button2     = FindViewById <Button>(Resource.Id.login_2);
            Button button3     = FindViewById <Button>(Resource.Id.login_3);
            Button button4     = FindViewById <Button>(Resource.Id.login_4);
            Button btn_private = FindViewById <Button>(Resource.Id.start_private);
            Button btn_group   = FindViewById <Button>(Resource.Id.start_group
                                                       );

            button1.Tag = user1;
            button2.Tag = user2;
            button3.Tag = user3;
            button4.Tag = user4;

            button1.Click += OnUserSelected;
            button2.Click += OnUserSelected;
            button3.Click += OnUserSelected;
            button4.Click += OnUserSelected;

            btn_private.Click += StartPrivateChat;
            btn_group.Click   += (sender, e) =>
            {
                if (RongCallClient.Instance != null)
                {
                    //查询讨论组是否存在
                    RongIM.Instance.GetConversationList(new SimpleResultCallback()
                    {
                        ErrorHandler = (obj) =>
                        {
                            Console.WriteLine(obj);
                        },
                        SuccessHandler = (obj) =>
                        {
                            Console.WriteLine(obj);
                            mConversations = (JavaList <Conversation>)obj;
                            if (mConversations != null && !mConversations.IsEmpty)
                            {
                                var conversation = mConversations[0];
                                StartMultiCall(conversation.TargetId);
                            }
                            else
                            {
                                IList <string> all = users.ConvertAll((input) => { return(input.id); });
                                RongIM.Instance.CreateDiscussion("多人聊天", all, new CreateDiscussionCallback()
                                {
                                    SuccessHandler = (id) =>
                                    {
                                        StartMultiCall(id.ToString());
                                    }
                                });
                            }
                        }
                    }, Conversation.ConversationType.Discussion);
                }
                else
                {
                    ShowMsg("未连接");
                }
            };
        }