Ejemplo n.º 1
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.LoginScreen);

            RuntimeVar   RT   = new RuntimeVar();
            RuntimeVarDB RTDB = new RuntimeVarDB();

            RT = RTDB.Get();


            UARDB = new UserAccountRuntimeDB();
            UAR   = UARDB.Get();
            string password     = UAR.Password;
            string SecretPhrase = StringCipher.Decrypt(RT.CurrentPassphrase, password);



            Button btnLogin = FindViewById <Button>(Resource.Id.btnLogin);

            btnLogin.Click += delegate
            {
                BNWAPI = new BNWalletAPI();
                GetAccountIDResult gair = BNWAPI.getAccountID(SecretPhrase, "");
                if (gair.success)
                {
                    GetAccountResult gar = BNWAPI.getAccount(gair.accountRS);
                    if (gar.success)
                    {
                        Intent intent = new Intent(this, typeof(InfoScreen));
                        intent.PutExtra("WalletAddress", gar.accountRS);
                        intent.PutExtra("WalletName", gar.name);
                        intent.PutExtra("WalletBalance", gar.balanceNQT);
                        intent.SetFlags(ActivityFlags.SingleTop);
                        StartActivity(intent);
                    }
                    else
                    {
                        UADB = new UserAccountsDB();
                        UA   = UADB.Get(RT.CurrentWalletName);
                        Intent intent = new Intent(this, typeof(InfoScreen));
                        intent.PutExtra("WalletAddress", UA.BurstAddress);
                        intent.PutExtra("WalletName", UA.AccountName);
                        intent.PutExtra("WalletBalance", "0.00000000");
                        intent.SetFlags(ActivityFlags.SingleTop);
                        StartActivity(intent);
                    }
                }
                else
                {
                    UADB = new UserAccountsDB();
                    UA   = UADB.Get(RT.CurrentWalletName);
                    Intent intent = new Intent(this, typeof(InfoScreen));
                    intent.PutExtra("WalletAddress", UA.BurstAddress);
                    intent.PutExtra("WalletName", UA.AccountName);
                    intent.PutExtra("WalletBalance", "0.00000000");
                    intent.SetFlags(ActivityFlags.SingleTop);
                    StartActivity(intent);
                }
            };



            Button btnLoadWallet = FindViewById <Button>(Resource.Id.btnLoadWallet);

            btnLoadWallet.Click += delegate
            {
                Intent intent = new Intent(this, typeof(WalletSelector));
                intent.SetFlags(ActivityFlags.SingleTop);
                StartActivity(intent);
                Finish();
            };



            // Create your application here
        }
Ejemplo n.º 2
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.SendBurstScreen);
            MobileBarcodeScanner.Initialize(Application);
            scanner = new MobileBarcodeScanner();

            RuntimeVar   RT   = new RuntimeVar();
            RuntimeVarDB RTDB = new RuntimeVarDB();

            RT = RTDB.Get();


            burstAddress = Intent.GetStringExtra("BurstAddress");


            RecipientBurstAddress = FindViewById <EditText>(Resource.Id.sendBurstAddress);
            Message   = FindViewById <EditText>(Resource.Id.sendMessage);
            Amount    = FindViewById <EditText>(Resource.Id.sendAmount);
            Fee       = FindViewById <EditText>(Resource.Id.sendFee);
            cbEncrypt = FindViewById <CheckBox>(Resource.Id.cbEncryptMessage);

            CreateQRCode = FindViewById <Button>(Resource.Id.btnViewQRCode);

            UARDB = new UserAccountRuntimeDB();
            UAR   = UARDB.Get();
            string password     = UAR.Password;
            string SecretPhrase = StringCipher.Decrypt(RT.CurrentPassphrase, password);



            CreateQRCode.Click += delegate
            {
                Intent intent = new Intent(this, typeof(QRCodeView));
                intent.SetFlags(ActivityFlags.SingleTop);
                StartActivity(intent);
            };

            Button btnsend = FindViewById <Button>(Resource.Id.btnSend);

            btnsend.Click += delegate
            {
                AlertDialog.Builder alertDialog = new AlertDialog.Builder(this);
                alertDialog.SetTitle("Confirmation");
                alertDialog.SetMessage("Are you sure all the details are correct?");
                alertDialog.SetPositiveButton("Yes", delegate
                {
                    double amntdbl = Convert.ToDouble(Amount.Text);
                    amntdbl        = amntdbl * 100000000;
                    amount         = amntdbl.ToString();

                    double amntdblconf = Convert.ToDouble(amount);
                    amntdblconf        = amntdblconf / 100000000;
                    Amount.Text        = amntdblconf.ToString("#,0.00000000");

                    double feeamnt = Convert.ToDouble(Fee.Text);
                    feeamnt        = feeamnt * 100000000;
                    fee            = feeamnt.ToString();

                    double feeamntconf = Convert.ToDouble(fee);
                    feeamntconf        = feeamntconf / 100000000;
                    Fee.Text           = feeamntconf.ToString("#,0.00000000");

                    BNWAPI = new BNWalletAPI();
                    GetsendMoneyResult gsmr = BNWAPI.sendMoney(RecipientBurstAddress.Text, amount, fee, SecretPhrase, Message.Text, cbEncrypt.Checked);
                    if (gsmr.success)
                    {
                        GetTransactionResult gtr = BNWAPI.getTransaction(gsmr.transaction);
                        if (gtr.success)
                        {
                            AlertDialog.Builder ConfirmationDetailsDialog = new AlertDialog.Builder(this);
                            ConfirmationDetailsDialog.SetTitle("Confirmation Details");
                            ConfirmationDetailsDialog.SetMessage("Sender Address: " + gtr.senderRS + "\n" + "Amount of Burst sent: " + Amount.Text + "\n" + "Fee: " + Fee.Text + "\n" + "Recipient Address: " + gtr.recipientRS + "\n" + "Signature Hash: " + gsmr.signatureHash
                                                                 + "\n" + "Transaction ID: " + gsmr.transaction + "\n" + "Block Height: " + gtr.ecBlockHeight);

                            ConfirmationDetailsDialog.SetPositiveButton("OK", delegate
                            {
                                GetAccountResult gar = BNWAPI.getAccount(gtr.senderRS);
                                if (gar.success)
                                {
                                    Intent intent = new Intent(this, typeof(InfoScreen));
                                    intent.PutExtra("WalletAddress", gar.accountRS);
                                    intent.PutExtra("WalletName", gar.name);
                                    intent.PutExtra("WalletBalance", gar.balanceNQT);
                                    intent.SetFlags(ActivityFlags.SingleTop);
                                    StartActivity(intent);
                                    Finish();
                                }
                            });
                            ConfirmationDetailsDialog.Show();
                        }
                    }
                    else
                    {
                        toast = Toast.MakeText(this, "Received API Error: " + gsmr.errorMsg, ToastLength.Long);
                        toast.Show();
                    }
                });
                alertDialog.SetNegativeButton("No", delegate
                {
                    alertDialog.Dispose();
                });
                alertDialog.Show();
            };



            Button ScanQRCode = FindViewById <Button>(Resource.Id.btnSendQRCode);

            ScanQRCode.Click += async delegate
            {
                await ScanFunction();
            };



            // Create your application here
        }