Как создать хэш торговой стороны в Payumoney android intigation

Я использую платежный портал Payumoney в своем приложении. Я сгенерировал хэш
из функции GetHashesFromServerTask, и эта часть работает нормально.
Я сталкиваюсь с проблемой в функции fetchMerchantHashes.

     private void fetchMerchantHashes(final Intent intent) {
// now make the api call.
final String postParams = "merchant_key=" + merchantKey + "&user_credentials=" + userCredentials;
final Intent baseActivityIntent = intent;
new AsyncTask<Void, Void, HashMap<String, String>>() {

@Override
protected HashMap<String, String> doInBackground(Void... params) {
try {
//TODO Replace below url with your server side file url.
URL url = new URL("https://payu.herokuapp.com/get_merchant_hashes");

byte[] postParamsByte = postParams.getBytes("UTF-8");

HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
conn.setRequestProperty("Content-Length", String.valueOf(postParamsByte.length));
conn.setDoOutput(true);
conn.getOutputStream().write(postParamsByte);

InputStream responseInputStream = conn.getInputStream();
StringBuffer responseStringBuffer = new StringBuffer();
byte[] byteContainer = new byte[1024];
for (int i; (i = responseInputStream.read(byteContainer)) != -1; ) {
responseStringBuffer.append(new String(byteContainer, 0, i));
}

JSONObject response = new JSONObject(responseStringBuffer.toString());

HashMap<String, String> cardTokens = new HashMap<String, String>();
JSONArray oneClickCardsArray = response.getJSONArray("data");
int arrayLength;
if ((arrayLength = oneClickCardsArray.length()) >= 1) {
for (int i = 0; i < arrayLength; i++) {
cardTokens.put(oneClickCardsArray.getJSONArray(i).getString(0), oneClickCardsArray.getJSONArray(i).getString(1));
}
return cardTokens;
}
// pass these to next activity

} catch (JSONException e) {
e.printStackTrace();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (ProtocolException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}

@Override
protected void onPostExecute(HashMap<String, String> oneClickTokens) {
super.onPostExecute(oneClickTokens);

baseActivityIntent.putExtra(PayuConstants.ONE_CLICK_CARD_TOKENS, oneClickTokens);
startActivityForResult(baseActivityIntent, PayuConstants.PAYU_REQUEST_CODE);
}
}.execute();
}

Я не могу понять, что делать сейчас, чтобы получить ответ на транзакцию.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector