package monnethic.mobile.user; import android.content.Intent; import android.os.AsyncTask; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.TextView; import android.widget.Toast; import com.example.monnthic.monnethicmobile.R; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import monnethic.mobile.blockchainApi.UrlApi; import monnethic.mobile.transaction.MakePayementActivity; import monnethic.mobile.transaction.ReceivePayementActivity; public class UserAccountActivity extends AppCompatActivity { private TextView balance; private String strUrl = UrlApi.URL_BALANCE+"b"; private String result; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_user_account); balance = findViewById(R.id.balanceView); Button buttonPayement = findViewById(R.id.buttonPayement); Button buttonReceive = findViewById(R.id.buttonReceive); Button buttonSettings = findViewById(R.id.buttonSettings); Button buttonRefresh = findViewById(R.id.buttonRefreshBalance); buttonPayement.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { sendPayement(); } }); buttonReceive.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { receivePayement(); } }); buttonSettings.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { settings(); } }); buttonRefresh.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { refreshBalance("b"); } }); new GetUserBalanceTask().execute(strUrl); } public void sendPayement(){ Intent payementIntent = new Intent(UserAccountActivity.this, MakePayementActivity.class); UserAccountActivity.this.startActivity(payementIntent); } public void receivePayement(){ Intent receivePayementIntent = new Intent(UserAccountActivity.this, ReceivePayementActivity.class); UserAccountActivity.this.startActivity(receivePayementIntent); } public void settings(){ Toast.makeText(this, "Coming soon", Toast.LENGTH_SHORT).show(); } public void refreshBalance(String userHash){ String url = UrlApi.URL_BALANCE+userHash; new GetUserBalanceTask().execute(url); } public void setBalance(String value){ balance.setText(value); } public class GetUserBalanceTask extends AsyncTask { @Override protected void onPreExecute() { super.onPreExecute(); } @Override protected void onPostExecute(String s) { balance.setText(s); } @Override protected String doInBackground(String... params) { System.out.println(params[0]); InputStream inputStream = null; HttpURLConnection conn = null; try{ URL url = new URL(params[0]); conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("GET"); conn.connect(); int response = conn.getResponseCode(); if(response != 200){ return "Error response"; } inputStream = conn.getInputStream(); if(inputStream == null){ return "Error inputStream"; } BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream())); StringBuffer buffer = new StringBuffer(); String line; while ((line = reader.readLine())!=null){ buffer.append(line); } String value = new String(buffer); System.out.println("result is "+value); result = value; } catch (Exception e){ System.out.println("Exception : "+e); } return result; } } }