示例#1
0
        public static void Open(string number)
        {
            ValidateOpen(number);

            var phoneNumber = string.Empty;

            if (Platform.HasApiLevel(BuildVersionCodes.N))
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number, Locale.GetDefault(Locale.Category.Format).Country);
            }
            else if (Platform.HasApiLevel(BuildVersionCodes.Lollipop))
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number, Locale.Default.Country);
            }
            else
#pragma warning disable CS0618
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number);
            }
#pragma warning restore CS0618

            var dialIntent = ResolveDialIntent(phoneNumber)
                             .SetFlags(ActivityFlags.ClearTop)
                             .SetFlags(ActivityFlags.NewTask);

            Application.Context.StartActivity(dialIntent);
        }
示例#2
0
        public void MakePhoneCall(string name, string number)
        {
            var phoneNumber = PhoneNumberUtils.FormatNumber(number);
            var newIntent   = new Intent(Intent.ActionDial, Uri.Parse("tel:" + phoneNumber));

            StartActivity(newIntent);
        }
示例#3
0
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);

            // 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
            var sendSMSButton       = FindViewById <Button>(Resource.Id.MyButton);
            var phoneNumberEditText = FindViewById <EditText>(Resource.Id.editText1);
            var messageEditText     = FindViewById <EditText>(Resource.Id.editText2);

            _smsManager = SmsManager.Default;

            sendSMSButton.Click += (s, e) =>
            {
                var phone   = phoneNumberEditText.Text;
                var message = messageEditText.Text;

                if (!PhoneNumberUtils.IsWellFormedSmsAddress(phone) || PhoneNumberUtils.IsEmergencyNumber(phone))
                {
                    return;
                }

                var piSent      = PendingIntent.GetBroadcast(this, 0, new Intent("SMS_SENT"), 0);
                var piDelivered = PendingIntent.GetBroadcast(this, 0, new Intent("SMS_DELIVERED"), 0);

                _smsManager.SendTextMessage(phone, null, message, piSent, piDelivered);
            };
        }
        public void RegisterQuickTest()
        {
            UserService target = CreateNewUserService();
            UserRegisterQuickFromDoctorSP p = new UserRegisterQuickFromDoctorSP();

            p.FirstName      = TestUtils.RandomUtils.RandomString(100);
            p.LastName       = TestUtils.RandomUtils.RandomString(100);
            p.PhoneNumber    = TestUtils.RandomUtils.RandomPhoneNumber();
            p.ReferrerUserID = (long)TestEnums.User.constDoctorID;
            User insertedUser = (User)target.RegisterQuickFromDoctor(p);

            string phoneNumberSearchable = PhoneNumberUtils.MakeSearchablePhoneNumber(p.PhoneNumber);

            User u = (User)target.GetByUserNameT(insertedUser.UserName);

            Assert.AreEqual(insertedUser.UserName.ToLower(), u.UserName, "User name didn't inserted correctly");
            //Assert.AreEqual(phoneNumberSearchable, u.PhoneNumberSearchable, "phoneNumber didn't inserted correctly");

            UserInRoleService uInRoleService = (UserInRoleService)EntityFactory.GetEntityServiceByName(vUserInRole.EntityName, "");
            var count = uInRoleService.GetCount(new FilterExpression(new Filter(vUserInRole.ColumnNames.UserID, u.UserID)));

            Assert.AreEqual(1, count, "we expect that user be in one of the assigned roles"); // we expect that user be in one of the assigned roles

            IDoctor_PatientService doctor_PatientService = Doctor_PatientEN.GetService();
            FilterExpression       filter = new FilterExpression(vDoctor_Patient.ColumnNames.DoctorID, p.ReferrerUserID);

            filter.AddFilter(vDoctor_Patient.ColumnNames.PatientUserID, u.UserID);
            Assert.AreEqual(1, doctor_PatientService.GetCount(filter), "Doctor_Patient is not exists.");
        }
示例#5
0
        static Task DoMakePhoneCall(string number, string _)
        {
            ((Activity)UIRuntime.NativeRootScreen).StartActivity(
                new Intent(Intent.ActionDial, Android.Net.Uri.Parse("tel:" + PhoneNumberUtils.FormatNumber(number))));

            return(Task.CompletedTask);
        }
示例#6
0
        public void MakePhoneCall(string number, string name = null)
        {
            if (string.IsNullOrWhiteSpace(number))
            {
                throw new ArgumentException(nameof(number));
            }

            if (CanMakePhoneCall)
            {
                string phoneNumber = number;
                if (Build.VERSION.SdkInt < BuildVersionCodes.Lollipop)
                {
#pragma warning disable CS0618
                    phoneNumber = PhoneNumberUtils.FormatNumber(number);
#pragma warning restore CS0618
                }
                else
                {
                    if (!string.IsNullOrEmpty(settings.DefaultCountryIso))
                    {
                        phoneNumber = PhoneNumberUtils.FormatNumber(number, settings.DefaultCountryIso);
                    }
                }

                var dialIntent = ResolveDialIntent(phoneNumber);
                dialIntent.StartNewTopMostActivity();
            }
        }
示例#7
0
        void LaunchDial()
        {
            string phoneNumber = PhoneNumberUtils.FormatNumber(Model.PrimaryPhone);
            Intent newIntent   = new Intent(Intent.ActionDial, Android.Net.Uri.Parse("tel:" + phoneNumber));

            StartActivity(newIntent);
        }
示例#8
0
        private static void ShowPhoneCallUIImpl(string phoneNumber, string displayName)
        {
            if (Build.VERSION.SdkInt >= BuildVersionCodes.N)
            {
#if __ANDROID_24__
                phoneNumber = PhoneNumberUtils.FormatNumber(phoneNumber, Java.Util.Locale.GetDefault(Java.Util.Locale.Category.Format).Country);
#endif
            }
            else if (Build.VERSION.SdkInt >= BuildVersionCodes.Lollipop)
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(phoneNumber, Java.Util.Locale.Default.Country);
            }
            else
            {
#pragma warning disable CS0618
                phoneNumber = PhoneNumberUtils.FormatNumber(phoneNumber);
#pragma warning restore CS0618
            }

            var phoneCallIntent = new Intent(
                Intent.ActionDial,
                Android.Net.Uri.Parse($"tel:{phoneNumber}"))
                                  .SetFlags(ActivityFlags.ClearTop)
                                  .SetFlags(ActivityFlags.NewTask);

            ContextHelper.Current.StartActivity(phoneCallIntent);
        }
        static void PlatformOpen(string number)
        {
            ValidateOpen(number);

            var phoneNumber = string.Empty;

            if (Platform.HasApiLevelN)
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number, Java.Util.Locale.GetDefault(Java.Util.Locale.Category.Format).Country) ?? phoneNumber;
            }
            else
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number, Java.Util.Locale.Default.Country) ?? phoneNumber;
            }

            // if we are an extension then we need to encode
            if (phoneNumber.Contains(',') || phoneNumber.Contains(';'))
            {
                phoneNumber = URLEncoder.Encode(phoneNumber, "UTF-8") ?? phoneNumber;
            }

            var dialIntent = ResolveDialIntent(phoneNumber);

            var flags = ActivityFlags.ClearTop | ActivityFlags.NewTask;

            if (Platform.HasApiLevelN)
            {
                flags |= ActivityFlags.LaunchAdjacent;
            }
            dialIntent.SetFlags(flags);

            Platform.AppContext.StartActivity(dialIntent);
        }
示例#10
0
        static void PlatformOpen(string number)
        {
            ValidateOpen(number);

            var phoneNumber = string.Empty;

#if __ANDROID_24__
            if (Platform.HasApiLevelN)
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number, Java.Util.Locale.GetDefault(Java.Util.Locale.Category.Format).Country);
            }
            else if (Platform.HasApiLevel(BuildVersionCodes.Lollipop))
#else
            if (Platform.HasApiLevel(BuildVersionCodes.Lollipop))
#endif

            { phoneNumber = PhoneNumberUtils.FormatNumber(number, Java.Util.Locale.Default.Country); }
            else
#pragma warning disable CS0618
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number);
            }
#pragma warning restore CS0618

            var dialIntent = ResolveDialIntent(phoneNumber)
                             .SetFlags(ActivityFlags.ClearTop)
                             .SetFlags(ActivityFlags.NewTask);

            Platform.AppContext.StartActivity(dialIntent);
        }
示例#11
0
        public void MakePhoneCall(string number, string name = null)
        {
            if (string.IsNullOrWhiteSpace(number))
            {
                throw new ArgumentException("number");
            }

            if (CanMakePhoneCall)
            {
                string phoneNumber = number;
                if (Build.VERSION.SdkInt < BuildVersionCodes.Lollipop)
                {
                    phoneNumber = PhoneNumberUtils.FormatNumber(number);
                }
                else
                {
                    if (!string.IsNullOrEmpty(Settings.DefaultCountryIso))
                    {
                        phoneNumber = PhoneNumberUtils.FormatNumber(number, Settings.DefaultCountryIso);
                    }
                }

                var dialIntent = ResolveDialIntent(phoneNumber);
                dialIntent.StartNewActivity();
            }
        }
示例#12
0
        public void Open(string number)
        {
            ValidateOpen(number);

            var phoneNumber = string.Empty;

            if (OperatingSystem.IsAndroidVersionAtLeast(24))
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number, Java.Util.Locale.GetDefault(Java.Util.Locale.Category.Format).Country) ?? phoneNumber;
            }
            else
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number, Java.Util.Locale.Default.Country) ?? phoneNumber;
            }

            // if we are an extension then we need to encode
            if (phoneNumber.Contains(',', StringComparison.Ordinal) || phoneNumber.Contains(';', StringComparison.Ordinal))
            {
                phoneNumber = URLEncoder.Encode(phoneNumber, "UTF-8") ?? phoneNumber;
            }

            var dialIntent = ResolveDialIntent(phoneNumber);

            var flags = ActivityFlags.ClearTop | ActivityFlags.NewTask;

            if (OperatingSystem.IsAndroidVersionAtLeast(24))
            {
                flags |= ActivityFlags.LaunchAdjacent;
            }
            dialIntent.SetFlags(flags);

            Application.Context.StartActivity(dialIntent);
        }
示例#13
0
        public void MakePhoneCall(string name, string number)
        {
#warning What exceptions could be thrown here?
#warning Does this need to be on UI thread?
            var phoneNumber = PhoneNumberUtils.FormatNumber(number);
            var newIntent   = new Intent(Intent.ActionDial, Uri.Parse("tel:" + phoneNumber));
            StartActivity(newIntent);
        }
示例#14
0
 public bool IsGlobalPhoneNumber(string input)
 {
     if (string.IsNullOrEmpty(input) || input.Length < 6)
     {
         return(false);
     }
     return(input.StartsWith("+") && PhoneNumberUtils.IsGlobalPhoneNumber(input));
 }
示例#15
0
        public LocalContact(string phoneNumber)
        {
            PhoneNumber = phoneNumber;
            var parsed = PhoneNumberUtils.ParsePhoneNumber(PhoneNumber);

            IsMobile              = parsed.IsMobile;
            IsValidPhoneNumber    = parsed.IsValid;
            NormalizedPhoneNumber = parsed.Normalized;
        }
示例#16
0
        public void ShowUI(string dialNumber, string displayName)
        {
            var number = PhoneNumberUtils.FormatNumber(dialNumber.Trim(), "JP");
            var intent = new Intent(Intent.ActionDial, Uri.Parse("tel:" + number));

            if (!IsIntentAvailable(intent))
            {
                return;
            }

            intent.SetFlags(ActivityFlags.NewTask);
            Android.App.Application.Context.StartActivity(intent);
        }
示例#17
0
        public void MakeSearchablePhoneNumber()
        {
            string[] phoneNumbers = { null, "", "1-238-0453.5554", "1111", "778-JAAJ-777" };
            string[] expecteds    = { null, null, "123804535554", "1111", "778jaaj777" };

            for (int i = 0; i < phoneNumbers.Length; i++)
            {
                string phoneNumber = phoneNumbers[i];
                string expected    = expecteds[i];
                string actual      = PhoneNumberUtils.MakeSearchablePhoneNumber(phoneNumber);
                Assert.AreEqual(expected, actual, string.Format("Phone number {0} is not formatted correct. Actual: {1}", phoneNumber, actual));
            }
        }
        public void MakePhoneCall(string number, string name = null)
        {
            if (string.IsNullOrWhiteSpace(number))
            {
                throw new ArgumentException("number");
            }

            if (CanMakePhoneCall)
            {
                var phoneNumber = PhoneNumberUtils.FormatNumber(number);

                var dialIntent = ResolveDialIntent(phoneNumber);
                dialIntent.StartNewActivity();
            }
        }
示例#19
0
        public void MakePhoneCall(string name, string number)
        {
            string phoneNumber;

            if (Build.VERSION.SdkInt >= BuildVersionCodes.N)
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number, Locale.GetDefault(Locale.Category.Format).Country);
            }
            else
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number, Locale.Default.Country);
            }

            var newIntent = new Intent(Intent.ActionDial, Uri.Parse("tel:" + phoneNumber));

            StartActivity(newIntent);
        }
示例#20
0
        //TODO : 더 최적화할 건덕지가 있다.
        //LoadContactData()와 RawContact와 LoadContactData2랑 합칠수 있을듯...
        private void LoadContactData()
        {
            foreach (Contact objContact in _ContactList.Values)
            {
                string refinedAddress = PhoneNumberUtils.FormatNumber(objContact.PrimaryContactData.Address, "KR");

                if (refinedAddress == null)
                {
                    refinedAddress = objContact.PrimaryContactData.Address;
                }

                if (_ContactDataList.ContainsKey(refinedAddress) == false)
                {
                    _ContactDataList.Add(refinedAddress, objContact.PrimaryContactData);
                }
            }
        }
示例#21
0
        public void MakePhoneCall(string number, string name = null)
        {
            if (string.IsNullOrWhiteSpace(number))
            {
                throw new ArgumentException("number");
            }

            if (CanMakePhoneCall)
            {
                var phoneNumber = PhoneNumberUtils.FormatNumber(number);

                Uri telUri     = Uri.Parse("tel:" + phoneNumber);
                var dialIntent = new Intent(Intent.ActionDial, telUri);

                dialIntent.StartNewActivity();
            }
        }
        public bool SendWhatsApp(string number, string nameFrom, string nameTo)
        {
            var result = true;

            try
            {
                var currentContext = Android.App.Application.Context;

                //Intent sendIntent = new Intent(Intent.ActionSendto, Uri.Parse("smsto:" + "" + number + "?body=Sarasa" + ""));
                //sendIntent.SetPackage("com.whatsapp");
                //currentContext.StartActivity(sendIntent);

                try
                {
                    Intent myIntent = new Intent("android.intent.action.MAIN");
                    myIntent.SetComponent(new ComponentName("com.whatsapp", "com.whatsapp.Conversation"));
                    myIntent.PutExtra("abcsdadasd", PhoneNumberUtils.StripSeparators("+54 9 11 60564676") + "@s.whatsapp.net");
                    currentContext.StartActivity(myIntent);
                }
                catch (Exception ex)
                {
                    result = false;
                }

                try
                {
                    String text   = "This is a test";// Replace with your message.
                    Intent intent = new Intent();
                    intent.SetAction(Intent.ActionSend);
                    intent.PutExtra(Intent.ExtraText, "This is my text to send.");
                    intent.SetType("text/plain");
                    intent.SetData(Uri.Parse("http://api.whatsapp.com/send?phone=" + number + "&text=" + text));
                    currentContext.StartActivity(intent);
                }
                catch (Exception ex)
                {
                    result = false;
                }
            }
            catch (Exception ex)
            {
                result = false;
            }
            return(result);
        }
示例#23
0
        public void MakePhoneCall(string name, string number)
        {
            string phoneNumber;

            if (Build.VERSION.SdkInt >= BuildVersionCodes.Lollipop)
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number, Locale.GetDefault(Locale.Category.Format).Country);
            }
            else
#pragma warning disable 618
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number);
            }
#pragma warning restore 618

            var newIntent = new Intent(Intent.ActionDial, Uri.Parse("tel:" + phoneNumber));
            StartActivity(newIntent);
        }
示例#24
0
        static void PlatformOpen(string number)
        {
            ValidateOpen(number);

            var phoneNumber = string.Empty;

#if __ANDROID_24__
            if (Platform.HasApiLevelN)
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number, Java.Util.Locale.GetDefault(Java.Util.Locale.Category.Format).Country) ?? phoneNumber;
            }
            else if (Platform.HasApiLevel(BuildVersionCodes.Lollipop))
#else
            if (Platform.HasApiLevel(BuildVersionCodes.Lollipop))
#endif

            { phoneNumber = PhoneNumberUtils.FormatNumber(number, Java.Util.Locale.Default.Country) ?? phoneNumber; }
            else
#pragma warning disable CS0618
            {
                phoneNumber = PhoneNumberUtils.FormatNumber(number) ?? phoneNumber;
            }
#pragma warning restore CS0618

            // if we are an extension then we need to encode
            if (phoneNumber.Contains(',') || phoneNumber.Contains(';'))
            {
                phoneNumber = URLEncoder.Encode(phoneNumber, "UTF-8") ?? phoneNumber;
            }

            var dialIntent = ResolveDialIntent(phoneNumber);

            var flags = ActivityFlags.ClearTop | ActivityFlags.NewTask;
#if __ANDROID_24__
            if (Platform.HasApiLevelN)
            {
                flags |= ActivityFlags.LaunchAdjacent;
            }
#endif
            dialIntent.SetFlags(flags);

            Platform.AppContext.StartActivity(dialIntent);
        }
示例#25
0
        public ContactData GetContactDataByAddress(string address, bool needRefresh)
        {
            if (needRefresh)
            {
                Refresh();
            }

            string refinedAddress = PhoneNumberUtils.FormatNumber(address, "KR");

            if (refinedAddress == null)
            {
                refinedAddress = address;
            }

            if (_ContactDataList.ContainsKey(refinedAddress))
            {
                return(_ContactDataList[refinedAddress]);
            }
            return(null);
        }
        private void BtnRegister_Click(object sender, EventArgs e)
        {
            String FullName    = txtFullName.Text;
            String Username    = txtUsername.Text;
            String Email       = txtEmail.Text;
            String PhoneNumber = PhoneNumberUtils.NormalizeNumber(txtPhoneNumber.Text);
            String Password    = txtPassword.Text;
            String Confirm     = txtConfirmPassword.Text;

            if (Password != Confirm)
            {
                Toast.MakeText(this, "The passwords provided do not match. Please try again.", ToastLength.Short).Show();
            }
            else
            {
                ModelMethods.CreateUser(FullName, Username, Email, PhoneNumber, Password);
                Toast.MakeText(this, "Account created. Please try to login now.", ToastLength.Short).Show();
                Finish();
            }
        }
        protected internal override void onCreate(Bundle savedInstanceState)
        {
            base.onCreate(savedInstanceState);

            ContentView = R.layout.activity_main;

            mPhoneNumber     = (EditText)findViewById(R.id.phoneNumber);
            mSmsButton       = (Button)findViewById(R.id.smsVerificationButton);
            mFlashCallButton = (Button)findViewById(R.id.callVerificationButton);

            mCountryIso = PhoneNumberUtils.getDefaultCountryIso(this);
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final String defaultCountryName = new java.util.Locale("", mCountryIso).getDisplayName();
            string defaultCountryName = (new Locale("", mCountryIso)).DisplayName;
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final CountrySpinner spinner = (CountrySpinner) findViewById(R.id.spinner);
            CountrySpinner spinner = (CountrySpinner)findViewById(R.id.spinner);

            spinner.init(defaultCountryName);
            spinner.addCountryIsoSelectedListener(new CountryIsoSelectedListenerAnonymousInnerClassHelper(this));
            resetNumberTextWatcher(mCountryIso);

            tryAndPrefillPhoneNumber();
        }