Как вызвать новое окно в сервисе?
Изучаю пример приложения для работы с кассой "Эвотор".
Пример тут: https://github.com/evotor/evotor-api-example
Задача в том, чтобы на экране оплаты вывести иконку, при нажатии на которую будет открываться новое окно, в котором можно будет произвести некоторые действия.
В примере эта иконка обрабатывается так:
public class MyDiscountService extends IntegrationService {
@Nullable
@Override
protected Map<String, ActionProcessor> createProcessors() {
Map<String, ActionProcessor> map = new HashMap<>();
map.put(ReceiptDiscountEvent.NAME_SELL_RECEIPT, new ReceiptDiscountEventProcessor() {
@Override
public void call(@NonNull String action, @NonNull ReceiptDiscountEvent event, @NonNull Callback callback) {
try {
//Значение скидки на весь чек в рублях или иной валюте
BigDecimal discount = new BigDecimal(10);
JSONObject object = new JSONObject();
object.put("someSuperKey", "AWESOME DISCOUNT");
SetExtra extra = new SetExtra(object);
List<IPositionChange> listOfChanges = new ArrayList<>();
callback.onResult(
new ReceiptDiscountEventResult(
discount,
extra,
listOfChanges
));
} catch (JSONException | RemoteException e) {
e.printStackTrace();
}
}
});
return map;
}
}
После нажатия кнопки - пересчитывается скидка на весь чек и список товаров в чеке обновляется в соответствии с результатом пересчёта.
В какую сторону мне идти, чтобы при нажатии на данную кнопку у меня открывалось новое Activity с уже нужными мне формами/данными/кнопочками?