Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

7.   Пример реализации оплаты с помощью SDK Assist.Mobile

Code Block
languageactionscript3
package ru.assisttech.example;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import ru.assisttech.sdk.AssistSDK;
import ru.assisttech.sdk.AssistPaymentData;
import ru.assisttech.sdk.engine.AssistPayEngine;
import ru.assisttech.sdk.engine.PayEngineListener;
import ru.assisttech.sdk.storage.AssistTransaction;
public class
MainActivity extends
Activity implements
PayEngineListener { 
    private TextView tvPaymentResult;
    private AssistPayEngine
engine;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        tvPaymentResult = (TextView) findViewById(R.id.textView);
        // Получение платежного компонента из библиотеки
        engine= AssistSDK.getPayEngine(this);
        // Установка адреса сервера
        engine.setServerURL("server url");
        // Установка получателя результата
        engine.setEngineListener(this);

        findViewById(R.id.btPay).setOnClickListener(new View.OnClickListener(){

            @Override
            public void onClick(View v) {
                // Установка параметров платежа
                AssistPaymentData data = new AssistPaymentData();
                // ID мерчанта в системе Ассист
                data.setMerchantId("12345");
                // Номер заказа
                data.setOrderNumber("OrderNo");
                // Сумма
                data.setOrderAmount("100"); // 100 руб
                // Валюта
                data.setOrderCurrency(AssistPaymentData.Currency.RUB);
                // Комментарий
                data.setOrderComment("Тестовый платеж");
                // e-mail покупателя
                data.setEmail("customer@mail.com");
                // Почтовый адрес покупателя
                data.setAddress("Москва, Ленинградское ш. 39");
                // Домашний телефон
                data.setHomePhone("567-99-29");
                // Рабочий телефон
                data.setWorkPhone("555-00-00");
                // Мобильный телефон
                data.setMobilePhone("+79067410863");
                // Факс
                data.setFax("");
                // Фамилия
                data.setLastname("Романов");
                // Имя
                data.setFirstname("Пётр");
                // Отчество
                data.setMiddlename("Алексеевич");
                // Страна покупателя
                data.setCountry("Russia");
                // Область (штат)
                data.setState("Moscow");
                // город
                data.setCity("Moscow");
                // Почтовый индекс
                data.setZip("100290");
                // Язык
                data.setLanguage(AssistPaymentData.Lang.RU);
                // Вычисление подписи параметров платежа ...
                String signature = "stub_signature";
                // Установка подписи
                data.setSignature(signature);
                // Запуск процесса оплаты
                engine.payWeb(MainActivity.this, data, false);
            }
        });
    }
    /**
     * PayEngineListener callbacks
     */
    @Override
    public void onFinished(Activity activity, AssistTransaction assistTransaction) {
        if (!this.equals(activity)) {
            activity.finish();
        }
        tvPaymentResult.setText(assistTransaction.getResult().getOrderState().toText());
    }

    @Override
    public void onCanceled(Activity activity, AssistTransaction assistTransaction) {
        if (!this.equals(activity)) {
            activity.finish();
        }
        tvPaymentResult.setText(assistTransaction.getResult().getOrderState().toText());

    }

    @Override
    public void onFailure(Activity activity, String info) {
        tvPaymentResult.setText("Ошибка: " + info);
    }

    @Override
    public void onNetworkError(Activity activity, String s) {
        tvPaymentResult.setText("Сетевая ошибка: " + s);
    }
 }







https://github.com/assist-group/assist-mcommerce-sdk-android