Example #1
0
        public PayPalManager(Context context, PayPal.Forms.Abstractions.PayPalConfiguration xfconfig)
        {
            _xfconfig = xfconfig;
            Context   = context;

            switch (xfconfig.Environment)
            {
            case PayPal.Forms.Abstractions.Enum.PayPalEnvironment.NoNetwork:
                CONFIG_ENVIRONMENT = PayPalConfiguration.EnvironmentNoNetwork;
                break;

            case PayPal.Forms.Abstractions.Enum.PayPalEnvironment.Production:
                CONFIG_ENVIRONMENT = PayPalConfiguration.EnvironmentProduction;
                break;

            case PayPal.Forms.Abstractions.Enum.PayPalEnvironment.Sandbox:
                CONFIG_ENVIRONMENT = PayPalConfiguration.EnvironmentSandbox;
                break;
            }

            CONFIG_CLIENT_ID = xfconfig.PayPalKey;

            config = new PayPalConfiguration()
                     .Environment(CONFIG_ENVIRONMENT)
                     .ClientId(CONFIG_CLIENT_ID)
                     .AcceptCreditCards(xfconfig.AcceptCreditCards)
                     .MerchantName(xfconfig.MerchantName)
                     .MerchantPrivacyPolicyUri(global::Android.Net.Uri.Parse(xfconfig.MerchantPrivacyPolicyUri))
                     .MerchantUserAgreementUri(global::Android.Net.Uri.Parse(xfconfig.MerchantUserAgreementUri));

            if (!String.IsNullOrEmpty(xfconfig.Language))
            {
                config = config.LanguageOrLocale(xfconfig.Language);
            }

            if (!String.IsNullOrEmpty(xfconfig.PhoneCountryCode))
            {
                config = config.DefaultUserPhoneCountryCode(xfconfig.PhoneCountryCode);
            }

            Intent intent = new Intent(Context, typeof(PayPalService));

            intent.PutExtra(PayPalService.ExtraPaypalConfiguration, config);
            Context.StartService(intent);
        }
        void InitConfig()
        {
            Destroy();

            switch (_formsConfig.Environment)
            {
            case PayPalForms.PayPalEnvironment.NoNetwork:
                _configEnvironment = PayPalConfiguration.EnvironmentNoNetwork;
                break;

            case PayPalForms.PayPalEnvironment.Production:
                _configEnvironment = PayPalConfiguration.EnvironmentProduction;
                break;

            case PayPalForms.PayPalEnvironment.Sandbox:
                _configEnvironment = PayPalConfiguration.EnvironmentSandbox;
                break;
            }

            _configClientId = _formsConfig.PayPalKey;

            _nativeConfig = new PayPalConfiguration()
                            .Environment(_configEnvironment)
                            .ClientId(_configClientId)
                            .AcceptCreditCards(_formsConfig.AcceptCreditCards)
                            .MerchantName(_formsConfig.MerchantName)
                            .MerchantPrivacyPolicyUri(global::Android.Net.Uri.Parse(_formsConfig.MerchantPrivacyPolicyUri))
                            .MerchantUserAgreementUri(global::Android.Net.Uri.Parse(_formsConfig.MerchantUserAgreementUri))
                            .RememberUser(_formsConfig.StoreUserData);

            if (!String.IsNullOrEmpty(_formsConfig.Language))
            {
                _nativeConfig = _nativeConfig.LanguageOrLocale(_formsConfig.Language);
            }

            if (!String.IsNullOrEmpty(_formsConfig.PhoneCountryCode))
            {
                _nativeConfig = _nativeConfig.DefaultUserPhoneCountryCode(_formsConfig.PhoneCountryCode);
            }
            StartService();
        }