Alterações realizadas na aplicação
V4.10.2 (9/12/2024)
Correções
- ⬆️ Atualização da HAL
- 🐛 Correção do abortPayment
V4.9.5 (21/08/2024)
Correções
- 🐛 Corrige abort para fluxo de pix
- 🐛 Corrige onError sendo chamado multiplas vezes ao usar abortPayment
- 🐛 Melhora performance na inicialização do Mifare
V4.9.2 (24/07/2024)
Novas Features
- ✨ Sonda Pix
Correções
- 🐛 Correção do mifare para Positivo (L3, L400)
V4.8.9 (10/07/2024)
Correções
- ⬆️ Atualiza biblioteca da fabricante Sunmi
- 🐛 Corrige bug que ao chamar o abortPayment o callback do provider de pagamento não era chamado.
V4.8.7 (24/01/2024)
Novas Features
- ✨ Ações enviadas no fluxo de transação onResult depois da remoção do cartão
Correções
- 🐛 Correção da chamada de erro duplicada
V4.8.6 (12/01/2024)
- ⬆️ Upgrade Hal Stone API
- ⬆️ Upgrade Hal Ingenico API
V4.8.5 (21/12/2023)
- ⬆️ Upgrade Hal Stone API
V4.8.4 (18/12/2023)
- 🐛 Correção do retorno da impressão no modelo L4
V4.8.3 (11/12/2023)
- 🐛 Chamada do Callback onError quando o Status do QR_CODE
- ♻️ Ajuste no status de error do Pix para serem capturados pela Sonda do POS.
V4.8.1 (27/10/2023)
- 🛂 Add fine location permission to allow Android 10+ manage wifi without issues
V4.8.0 (26/09/2023)
- ✨ Suporte aos novos modelos Positivo L3/ Positivo L400
V4.7.7 (17/07/2023)
Correções
- 🐛 Correção do fluxo de
abortPayment()
no fluxo de QrCode.
V4.7.6 (27/06/2023)
Correções
- 🐛 Correção de timeout do QrCode por pagamento via QrCode ou via Pix.
V4.7.5 (27/06/2023)
Correções
- 🐛 Atualização biblioteca de impressão. Corrigindo Impressão de comprovante de pagamento via Pix.
V4.7.3 (12/06/2023)
Novas Features
- ✨ Adiciona suporte a crédito pré-pago. Adiciona método
getQualifiers
ao provider de transação, que retorna uma lista de qualificadores. Quando a transação for crédito pré-pago será incluído o valor"Prepaid"
nessa lista. - ✨ Atualiza biblioteca da Gertec para o GPOS700X. Incluindo melhorias e correções por parte das fabricantes.
Correções
- 🐛 Corrige problema de async task na detecção do Mifare. Quando o provider era iniciado múltiplas vezes era possível que a detecção parasse de funcionar.
V4.5.6 (26/04/2023)
Correções
- 🐛 Corrige campo AUT não é impresso no comprovante.
V4.5.4 (17/03/2023)
Correções
- ✨ Atualiza biblioteca da Gertec para o GPOS700X. Incluindo melhorias e correções por parte das fabricantes.
V4.5.3 (03/03/2023)
Correções
- 🐛 Corrige NullPointerException em getTransType no modelo APOS A8.
- ✨ Atualiza bibliotecas das fabricantes. Incluindo melhorias e correções por parte das fabricantes.
V4.5.2 (01/02/2023)
Correções
- 🐛 Funcionamento do envio de comprovante por email restaurado.
V4.5.0
Novas Features
- ✨ Pix
V4.4.0 (11/10/2022)
Novas Features
- ✨ Parcelamento 18x
V4.3.11 (22/08/2022)
Novas Features
- ✨ Novo status de erro PED_NO_KEY_FOUND_ERROR - POS Sem chaves
Correções
- 🐛 Correção mifareProvider has not been initialized
V4.3.9 (11/08/2022)
Correções
- 🐛 Erro ao mapear na tabela de Transaction o campo cardBrandName
V4.3.8 (09/08/2022)
Correções
- 🐛 SDK salva cache da ativação mesmo após restaurar dados
V4.3.1 (24/07/2022)
Correção
- 🐛 Remoção do status PARTIAL_APPROVED
V4.3.0 (21/07/2022)
Novas Features
- ✨ Atualizar affiliationKey no job de ativação
Correções
- 🐛 Correção do fluxo de Retap (NFC)
V4.0.8 (24/03/2022)
- Melhoria no fluxo de validação das URLs externas
- Correção no fluxo que busca informações sobre o dispositivo
V4.0.7 (14/03/2022)
- Correção do fluxo de transações não sendo revertidas automaticamente
- Correção do cancelamento por ITK
- Desabilitado o uso do useAdvanced no fluxo de reversão
- Melhoria no fluxo de teste automatizado
V4.0.6 (22/02/2022)
- Correção no retorno de erro. Retornava CARD_READ_ERROR quando deveria retornar EMV_NO_APP_ERROR.
- Correção Indicador de Fallback habilitado em contactless.
- Atualização HAL Gertec 1.20.0
V4.0.5 (15/02/2022)
- Novo campo "cardBrandName" no TransactionObject.
- Adiciona log com stacktrace no método abortPayment.
- Remove código legado que não estava mais sendo usado.
V4.0.4 (08/02/2022)
- Correção onResult sendo chamado duas vezes.
V4.0.3 (25/01/2022)
- Controle de Fallback de Redes usando o parâmetro useAdvancedHttp no construtor dos providers transacionais
V4.0.2 (13/01/2022)
- Refatoração dos fluxos de ativação, pagamento, captura, cancelamento e reversão (Melhoria no desempenho)
- Removido metodo setEnvironment. (Nova forma de configurar ambiente)
- Remoção do Jcenter.
- Refatora PosAndroidDevice para classe, pode ser usado para recuperar o serial, modelo do dispositivo.
Stone.getPosAndroidDevice()
- Correção no fluxo de abortPayment, transação não era revertida quando abortada no meio da request.
- Melhoria no fluxo de reversão.
- Dois novos status adicionados no TransactionStatusEnum (PENDING e REVERSED).
- Adicionado host pagarme.
V3.14.13 (13/12/2021)
- Correção de Null Pointer Exception no FncCommand.
- Correção de bug onde a transação não era revertida em alguns casos de erros.
V3.14.12 (08/12/2021)
- Correção de bug ao carregar tabelas.
- Deprecia PrintProvider e PrintReceiptProvider.
V3.14.10 (18/11/2021)
- Correção de problemas de instabilidade no pinpad.
- Otimizações no fluxo de pagamento com pinpad.
V3.14.8 (09/11/2021)
- Correção na ativação de dispositivos mobile.
V3.10.0 (11/12/2020)
- Atualização de SDK e HAL da Gertec.
- Utilização de Modulo OWL para envio de e-mail.
- Correção de bug de nro de Parcelas na Filipeta.
- Correção de bug que impedia a transação de app com PackageId maior que 35 chars.
V3.7.0 (17/06/2020)
- Padronização de mensageria para o autorizador da Stone.
V3.6.0 (10/04/2020)
- Integração com Data Container 1.0.0: Funções de Pagamento compartilhadas com POS Android
- Reversão
- Cancelamento
- Ativação
- Relatórios
V3.5.0 (19/02/2020)
- Suporte inicial à HW Gertec (GPOS700).
- Implementação de API Mifare para GPOS700
- Atualiza a versão da lib PAL para 2.10.0
V3.4.3.2 (25/03/2020)
- Correção nas configurações de segurança locais do POS (KAP).
V3.4.3 (09/01/2020)
- Correção de duplicidade na resposta da ativação.
V3.4.2 (06/11/2019)
- Correção de ativação do POS Android
- Correção de inicialização ao usar o SDK exclusivamente com Pinpads
V3.4.1 (28/10/2019)
- Suporte a novos cartões da bandeira Master Card
- Correção de captura de transações voucher
V3.4.0 (10/10/2019)
Suporte oficial ao POS Android Ingenico A8
- Nas verões anteriores existia uma distinção para o uso em dispositívos POS Android através de branchs RC (Release Candidate). Para mais informações clique aqui .
Modificações recomendadas
- Suporte multidex para aplicações com versão da
minSdkVersion
inferiores à 21. Para mais informações clique aqui .
v3.3.2 (25/09/2019)
Novas Implementações
- Novas dependências. Para atualizá-las, é preciso atualizar o arquivo build.gradle a nível de projeto:
/**
* Foi adicionado uma nova URL do package cloud.
* -> maven { url "https://packagecloud.io/Stone/pos-android-service-
container/maven2" }
**/
allprojects {
repositories {
jcenter()
maven { url "https://packagecloud.io/stone/sdk-android/maven2" }
maven { url "https://packagecloud.io/stone/sdk-android-
snapshot/maven2" }
maven { url "https://packagecloud.io/Stone/pos-android-service-
container/maven2" }
google()
}
}
E depois atualizar o arquivo build.gradle a nível de app:
/**
* Foi atualizado a versão do sdk para a versão 3.3.2.
**/
dependencies {
implementation 'br.com.stone:stone-sdk:3.3.2'
implementation 'br.com.stone:stone-sdk-posandroid:3.3.2'
implementation 'br.com.stone:stone-sdk-posandroid-
ingenico:3.3.2'
}
- Adicionado nova ação:
TRANSACTION_REQUIRES_CARDHOLDER_TO_CHECK_DEVICE
- Adicionado novos erros:
EMV_GENERIC_ERROR
EMV_FAILED_CARD_CONN_ERROR
EMV_NO_APP_ERROR
EMV_INITIALIZATION_ERROR
EMV_CAPK_ERROR
EMV_TLV_ERROR
EMV_NO_CAPK_ERROR
EMV_AID_ERROR
PRINTER_GENERIC_ERROR
PRINTER_INVALID_DATA_ERROR
PRINTER_OVERHEATING_ERROR
PED_PASS_GENERIC_ERROR
PED_PASS_INIT_ERROR
PED_PASS_CRYPT_ERROR
TRANS_GENERIC_ERROR
TRANS_APP_INVALID_ERROR
TRANS_CVV_NOT_PROVIDED_ERROR
TRANS_CVV_INVALID_ERROR
TRANS_APP_INVALID_INDEX_ERROR
TRANS_ONLINE_PROCESS_ERROR_ERROR
CARD_GENERIC_ERROR
SWITCH_INTERFACE
CARD_READ_MULTI_ERROR
PINPAD_CLOSED_CONNECTION
NOT_STONE_POS_OR_POS_MISCONFIGURED
COULD_NOT_ACTIVATE_ALL_STONE_CODES
Melhorias
- Adicionando na classe
Stone.java
a possibilidade de checagem referente a inicialização do SDK.
if(Stone.isInitialized()) {
//SDK Initialized
}
Stone.setOnInitializeListener(object : StoneStart.OnInitializeListener {
override fun onSuccess() {
// SDK Initislized with success
}
override fun onError() {
// SDK Initislized with error
}
})
Alterações
- Adição de novo atributo
external_id
aoTransactionObject
Correções
- [FIXED] Mudança de utilização da lib Koin através de instância local
v3.1.0 RC9 (07/06/2019)
Novas Implementações
- Adicionado novo erro especifico para switch interface:
ErrorsEnum.SWITCH_INTERFACE
Esse erro acontece quando ocorre um erro na leitura de um cartão NFC de
pagamento e é necessário inserir o chip. Aconselhamos que seja exibida uma
a mensagem: "Ocorreu um erro na leitura. Insira o chip."
Correções
- [FIXED] Corrigidas atualização e persistência do
TransactionObject
no fluxo do POS
Android - [FIXED] Fluxo de fallback contactless
- [FIXED] AID sendo impresso na via do lojista
v3.1.0 RC8 (25/03/2019)
Novas Implementações
- Agora retornando
ErrorsEnum.CARD_READ_TIMEOUT_ERROR
quando o usuário não insere/retira o cartão 30 segundos após pedirmos
Quando pedimos para o cliente inserir ou remover o cartão, esperamos apenas 30 segundos para essa ação acontecer, com o objetivo de não travar o pinpad nem consumir recursos desnecessários. Agora, em cenários como esse, retornamos o ErrorsEnum.CARD_READ_TIMEOUT_ERROR
na lista de erros (seja no callback de OnSuccess ou de OnError). Para tratar especificamente esse erro, basta fazer como indicado na nossa demo (transactionProvider?.listOfErrors
) e procurar por esse enum.
Correções
- [FIXED] Corrigido bug na função de validação de cartão que causava crash.
v3.1.0 RC7 (18/03/2019)
- [FIXED] Corrigido bug no envio de comandos para o pinpad.
- [FIXED] Corrigido crash no recibo quando cvm é nulo.
v3.1.0 RC6 (22/01/2019)
Novas Implementações
- Adicionado ao
ErrorsEnum
o enum SDK_VERSION_IS_OUTDATED. - Adicionada a classe
PosTransactionProvider
o métodoonCardReTap
. - Adicionada a classe
PaymentFlowWrapper
os métodosinstallApk
e ouninstallApk
.
v3.1.0 RC5 (17/12/2018)
- [FIXED] Atualização da biblioteca de integração com POS Android, incluindo correção de módulo NexGo e outras correções menores.
v3.1.0 RC4 (11/12/2018)
- [ADDED] Adicionado suporte à nova versão do POS Ingenico APOS A8 com teclado estático.
v3.0.0 RC6 (06/08/2018)
- [FIXED] Correção de erro nas transações com cartões Santander Visa para equipamento NexGo (Outros equipamentos não foram afetados);
- [FIXED] Correção de erro nas transações com cartões Alelo para equipamento NexGo (Outros equipamentos não foram afetados).
v3.0.0 RC5 (26/07/2018)
- Correção do bug nas transações com cartões Bradesco Visa em terminais da NexGo.
v3.0.0 RC4 (20/07/2018)
- Correção do bug onde transações mastercard débito estavam sendo negadas
- Correção do bug onde a SDK parava de responder após o evento
TRANSACTION_SENDING
com cartões nubank - SDK da Nexgo atualizada para
v2.0.7
v3.0.0
-
Classe StoneTransaction removida da SDK. Agora para fazer transações, preencha diretamente o TransactionObject com as informações necessárias.
-
Novo provider PosTransactionProvider para efetuar transações com o POS Android.
-
Novo provider PosPrintProvierpara impressão no POS Android
-
Método String getAuthorizationCode() removido do TransactionProvider por já ter esse campo no TransactionObject;
-
Adicionado CONTACTLESS no EntryMode enum.
-
Todos os erros que geravam o Enum GENERIC_ERROR foram movidos para UNKNOWN_ERROR
-
Nova permissão SYSTEM_ALERT_WINDOW para desenhar os dígitos da senha em tela no POS android.
-
Novos Enums de erro:
/** SWIPE_INCORRECT, TOO_MANY_CARDS, UNKNOWN_ERROR, INTERNAL_ERROR, // Erros de impressão do POS PRINTER_PRINT_ERROR, PRINTER_BUSY_ERROR, PRINTER_INIT_ERROR, PRINTER_LOW_ENERGY_ERROR, PRINTER_OUT_OF_PAPER_ERROR, PRINTER_UNSUPPORTED_FORMAT_ERROR, // PED ERROR PED_PASS_KEY_ERROR, PED_PASS_USER_CANCELED_ERROR, PED_PASS_NO_PIN_INPUT_ERROR, PED_PASS_TIMEOUT_ERROR, // TRANS ERROR TRANS_APP_BLOCKED_ERROR, TRANS_SELECT_TYPE_USER_CANCELED_ERROR, TRANS_INVALID_AMOUNT_ERROR, TRANS_PASS_MAG_BUT_IS_ICC_ERROR, TRANS_NO_TRANS_TYPE_ERROR, TRANS_WRONG_TRANS_TYPE_ERROR, // CARD ERROR CARD_ERROR, CARD_READ_ERROR, CARD_READ_TIMEOUT_ERROR, CARD_READ_CANCELED_ERROR, CARD_REMOVED_ERROR, CARD_UNSUPPORTED_ERROR, TRANSACTION_OBJECT_NULL_ERROR, -
android gradle build tools atualizado para 3.0.1
v2.5.9 (03/04/2018)
- Agora não é mais necessário usar o LoadTablesProvider para efetuar a carga de tabelas no Pinpad, todo o gerenciamento será feito internamente pela SDK.
- Enum TABLES_NOT_FOUND foi depreciado por não ser mais disparado.
- Enum NEED_LOAD_TABLES foi depreciado por não ser mais disparado.
- Provider DownloadTablesProvider removido por não ter mais utilidade.
- Corrigido bug onde o enum PINPAD_ALREADY_CONNECTED não era chamado ao conectar com um pinpad já conectado.
- Corrigido bug no BluetoothConnectionProvider que causava crash no app se ocorresse um erro desconhecido.
- Melhoria na detecção das bandeiras.
- Corrigido problema na migration do banco de pinpads quando atualizado de versões muito antigas da SDK.
- Essa versão corrige o problema de atualização da mobox/sweda.
v2.5.8
- Timeout das requests http aumentado para 1 minuto
- Corrigido bug da SDK deixar 2 ou mais stone codes iguais ficarem ativos no ActiveApplicationProvider
- Adicionado stacktrace das exceptions no BluetoothConnectionProvider
v2.5.7
- Provider CancellationProvider agora retorna o actionCode do cancelamento pelo método cancellationProvider.getActionCode() e o status do cancelamento pelo cancellationProvider.getResponseCodeEnum().
- Métodos getTransactionStatus() e getStatusAsString() do CancellationProvider foram removidos em prol dos novos métodos citados acima.
- Corrigido bug onde a mensagem de "Transação Aprovada" não aparecia no pinpad em algumas transações
- Novo método activate(String stoneCode) para ativar e adicionar um novo stone code na lista de stone codes ativos.
- Novo método deactivate(String stoneCode) para desativar somente um stone code da lista de ativos
- Corrigido bug onde versões anteriores da SDK recebiam NPE em pinpads já salvos sem o campo novo acqidx do PinpadObject.
v2.5.6
Nova dependência OkHttp para substituir o HttpUrlConnection nas requests da SDK para nossos servidores;
Forçando TLS >= 1.2 em todas as requests da SDK;
Novo Provider CaptureTransactionProvider para capturar transações cuja requisição foi feita com captura posterior (setando stoneTransaction.capture = false);
Correção na efetuação de transações da bandeira SODEXO;
Melhoria na captura do CVM do pinpad, forçando o retorno;
Gerenciando o uso da chave Elavon/Stone internamente. Não é mais necessário setar Stone.setAcquirer(Acquirer acquirer). Se o Pinpad não tiver nenhuma das duas chaves, a SDK retornará o erro ErrorsEnum.PINPAD_WITHOUT_KEY durante a conexão do pinpad no BluetoothConnectionProvider;
Novo ambiente INTERNAL_CERTIFICATION para validação do app pelo time de integrações da Stone;
v2.5.5
-
Adicionado campo subMerchantAddress no TransactionObject para editar o endereço do lojista que está efetuando a transação;
-
Adicionado campo subMerchantCategoryCode no TransactionObject para editar o mcc do lojista que está efetuando a transação;
-
Adicionado campo shortName no TransactionObject para armazenar em banco opção setada no campo shortName do StoneTransaction;
-
Adicionado campo capture no TransactionObject para armazenar em banco opção setada no campo capture do StoneTransaction;
-
Construtor CancellationProvider(Context context, int idFromTransactionInBase, UserModel userModel) depreciado. Em vez dele, use CancellationProvider(Context context, TransactionObject transaction)
-
Correção no migration da tabela de Transaction onde algumas colunas não estavam sendo inseridas quando atualizadas de versões muito antigas da SDK;
-
Novos Enums de erro:
/** SWIPE_INCORRECT, TOO_MANY_CARDS, UNKNOWN_ERROR, INTERNAL_ERROR, // Erros de impressão do POS PRINTER_PRINT_ERROR, PRINTER_BUSY_ERROR, PRINTER_INIT_ERROR, PRINTER_LOW_ENERGY_ERROR, PRINTER_OUT_OF_PAPER_ERROR, PRINTER_UNSUPPORTED_FORMAT_ERROR, // PED ERROR PED_PASS_KEY_ERROR, PED_PASS_USER_CANCELED_ERROR, PED_PASS_NO_PIN_INPUT_ERROR, PED_PASS_TIMEOUT_ERROR, // TRANS ERROR TRANS_APP_BLOCKED_ERROR, TRANS_SELECT_TYPE_USER_CANCELED_ERROR, TRANS_INVALID_AMOUNT_ERROR, TRANS_PASS_MAG_BUT_IS_ICC_ERROR, TRANS_NO_TRANS_TYPE_ERROR, TRANS_WRONG_TRANS_TYPE_ERROR, // CARD ERROR CARD_ERROR, CARD_READ_ERROR, CARD_READ_TIMEOUT_ERROR, CARD_READ_CANCELED_ERROR, CARD_REMOVED_ERROR, CARD_UNSUPPORTED_ERROR, TRANSACTION_OBJECT_NULL_ERROR, -
android gradle build tools atualizado para 3.0.1
v2.5.4-1
- Corrigido bug onde a transação era efetuada mas não era salva no banco.
v2.5.4
- Correção na leitura de informações de cartões ELO.
- Enum GENERIC_ERROR utilizado pelo ActiveApplicationProvider para quando o stone code não é reconhecido foi alterado para INVALID_STONE_CODE_OR_UNKNOWN.
- Melhoria na estrutura interna e na performance do TransactionProvider.
- Correção no envio do comprovante por email, colocando campo "assinatura" quando não era necessário.
- Corrigido bug onde eventualmente o método getListOfErrors() retornava null
v2.5.3
- Corrigido bug quando o BluetoothConnectionProvider disparava o evento onSuccess duplicado.
- Corrigido bug da SDK baixando tabelas toda vez que abria o app.
- Support Library atualizado para 27.0.2.
v2.5.2
- Adicionado campo cancellationDate no TransactionObject para armazenar a data do cancelamento;
- Adicionado campo lastConnectionAt no PinpadObject para armazenar a data da última vez que houve conexão com o pinpad;
- Todos os erros durante a conexão com o device bluetooth que retornavam em dialog. Agora os erros são adicionados no array de erros do provider. Segue exemplo de uso:
BluetoothConnectionProvider.setConnectionCallback(new StoneCallbackInterface() {
public void onSuccess() {
//handle success
}
public void onError() {
List<ErrorsEnum> listOfErrors = bluetoothConnectionProvider.getListOfErrors();
if (listOfErrors.contains(ErrorsEnum.PINPAD_ALREADY_CONNECTED)) {
//Do something
} else if (listOfErrors.contains(ErrorsEnum.TIME_OUT)) {
//Do something
} else if (listOfErrors.contains(ErrorsEnum.DEVICE_NOT_COMPATIBLE)) {
//Do something
} else if (listOfErrors.contains(ErrorsEnum.IO_ERROR_WITH_PINPAD)) {
//Do something
}
}
});
- O método Stone.getPinpadListSize() não mais retorna null quando a lista de pinpads estiver vazia
- Refatorado o gerenciamento das versões das tabelas, corrigindo o problema de carregar tabelas a cada transação;
- Construtores LoadTablesProvider(Context, GcrRequestCommand, PinpadObject) e LoadTablesProvider(Context, String, PinpadObject) depreciados. Use LoadTablesProvider(Context context, PinpadObject) em vez disso;
v2.5.1
- SendEmailProvider depreciado em prol do uso do SendEmailTransactionProvider
- Adicionado flag merchantReceipt (default false) pra informar se é pra enviar a via do cliente ou do estabelecimento no SendEmailTransactionProvider
- Método setEmailToSent e setEmailsToSent da classe SendEmailTransactionProvider depreciado, usar addTo()/setTo() para setar o destinatário do email
- Possibilidade de definir o remetente do email no SendEmailTransactionProvider no método setFrom
- Adicionado campo balance no TransactionObject pra transações voucher (SODEXO, Ticket, etc...)
- Bug de cartões (principalmente HIPER) retornando UNKNOWN fixed
- Novos métodos (findTransactionWithAuthorizationCode(), findTransactionWithInitiatorTransactionKey() e findTransactionByFilter() ) no TransactionDAO para busca das transações no banco local da SDK.
v2.5.0
- Permissões android.permission.VIBRATE e android.permission.ACCESS_WIFI_STATE removidas da SDK
- Novos campos cvm e serviceCode no TransactionObject
- appcompat-v7 atualizado para 26.1.0
- Enum de feedback CARD_REMOVE deprecated por não ser uma mensagem alterável.
- Enum de feedback REVERSAL deprecated pois não mandamos nenhuma mensagem para o pinpad
- Revertendo transações quando negado pelo cartão
- Bug de mostrar mensagem RETIRE O CARTÃO em cartões mágnéticos fixed
- gson atualizado de 2.8.1 para 2.8.2
- Várias melhorias de performance
v2.4.8
- Adicionando REVERSING_TRANSACTION_WITH_ERROR ao enum Action
- Revertendo transações automaticamente, quando ocorrer um erro
As transações que não foram processadas por um erro de conexão devem ter canceladas utilizando o ReversalProvider
v2.4.7
- Adicionando o status WITH_ERROR para transações com erro e que precisam ser canceladas (ex: timeout)
- Adicionando o ReversalProvider para varrer o banco de transações e cancelar as transações com o status WITH_ERROR
- Correção no cancelamento de transações
ReversalProvider reversalProvider = new ReversalProvider(this);
reversalProvider.setDialogMessage("Cancelando transação com erro");
reversalProvider.isDefaultUI();
reversalProvider.setConnectionCallback(new StoneCallbackInterface() {
@Override
public void onSuccess() {
// code code code
}
@Override
public void onError() {
// code code code
}
});
v2.4.6
- Downgrade da targetSdkVersion de 26 para 25 devido a problemas de compatibilidade com APIs antigas
- URL de ativação do ambiente CERTIFICATION alterada
- Corrigido bug ao executar a migration de versões anteriores à 2.3.0
- Downgrade da XStream para 1.4.7 devido a problemas com Java8 nas versões mais novas
- Remoção da permissão READ_PHONE_STATE da SDK!
v2.4.5
Localização do BluetoothConnectionProvider corrigida.
v2.4.4
- Melhoria e update das dependências
- Personalização das mensagens exibidas no Pinpad. No TransactionProvider, dois novos métodos foram implementados
- Novos Métodos:
setPinpadFeedbackMessage(PinpadFeedback key, String message) para customizar uma mensagem específica
setPinpadFeedbackMessages(Map<PinpadFeedback, String> pinpadFeedbackMessages) para personalizar todas as mensagens de uma vez
Mensagens disponíveis para personalização e suas mensagens default (em comentário):
PinpadFeedback.DENIED //"TRANSAC NEGADA"
PinpadFeedback.PROCESSING //"PROCESSANDO.."
PinpadFeedback.APPROVED //"TRANSAC APROVADA"
PinpadFeedback.CARD_REMOVE //"RETIRE O CARTAO"
PinpadFeedback.CARD_WITH_PROBLEMS //"ICC COM PROBLEMAS"
PinpadFeedback.DENIED_BY_NET //"TRANSAC NEGADA PELA REDE"
PinpadFeedback.CARD_INVALIDATED //"CARTAO ESTA INVALIDADO"
PinpadFeedback.DENIED_BY_CARD //"TRANSAC NEGADA PELO CARTAO"
v2.4.2
- Melhorias de perfomance
v2.4.1
-
Adicionando suporte para conexões via cabo (ethernet)
-
Campo signature em caso de necessidade de armazenar a assinatura da transação.
-
Melhorias de perfomance
v2.4.0
-
Agora a SDK está em no artifactory! siga as instruções de instalação no readme.
-
Possibilidade de escolher o uso de Pinpads Elavon (que não possuem chaves Stone)
-
Todos os Providers recebem Context em vez de Activity no construtor
-
Nova interface StoneActionCallback com um método void onStatusChanged(Action action) para receber eventos adicionais do provider. Esta interface herda de StoneCallbackInterface, então seu uso é opcional. Por enquanto existem somente eventos para transação, mas em breve terá eventos para outros providers.
Eventos disponíveis:
-
TRANSACTION_WAITING_CARD Esperando cartão ser inserido/passado
-
TRANSACTION_WAITING_PASSWORD Esperando senha do cartão (se houver)
-
TRANSACTION_SENDING Enviando transação para o servidor
-
TRANSACTION_WAITING_REMOVE Esperando a remoção do cartão do pinpad (se for chip)
v2.3.2
-
Agora você pode desativar a SDK usando deactivate() em ActiveApplicationProvider
-
Método execute() do ActiveApplicationProvider descontinuado. Em vez disso, use o método activate(List stoneCodes)
-
Corrigido bug em LoadTablesProvider no qual pedia um objeto desnecessário no construtor.
-
Novo campo entryMode no model da transação informando se a transação foi efetuada com chip ou tarja.
-
Campos e métodos descontinuados.
v2.3.1
- Corrigido problema na seleção do ambiente de SANDBOX
Para atualizar o projeto para transacionar no ambiente de integração deve-se fazer os seguintes passos:
-
Baixar o arquivo sdk_stone_2.3.1.aar no nosso repositório do GitHub
-
Após baixado o arquivo deve ser colocado na pasta "SEU_PROJETO"\app\libs
-
Com seu projeto aberto acrescente o código abaixo:
No build.grandle (Project):
allprojects {
repositories {
jcenter()
flatDir {
dirs 'libs'
}
}
}
No build.grandle (Module:App):
dependencies {
compile name: 'sdk_stone_2.3.1', ext: 'aar'
}
É recomendado utilizar o comando Clean Project e Rebuild Project antes dos testes caso esteja utilizando a IDE Android Studio.
v2.3.0
- Nova forma de instalação da lib, utilizando aar, em breve teremos um repositório para distribuir nossas bibliotecas!
- Agora você pode definir qual ambiente você quer usar em runtime, usando:
// para integração
Stone.setEnvironment(Environment.SANDBOX)
// produção
Stone.setEnvironment(Environment.PRODUCTION)
Stone.developerMode()
deprecated em prol do novo modo de escolha de ambiente mencionado acima.- Suporte para novas bandeiras: Elo, Alelo. (Verifique disponibilidade da bandeira no seu stone code com o time de integrações)
- Correções no envio de algumas transações para stone.
- Bug ao desconectar o pinpad fixed.
v2.2.10
- Hot fix do endpoint do TMS.
- Correções de erro na ativação e download das tabelas AID e CAPK.
v2.2.9
- Correção do ambiente de homologação.
v2.2.8
- Suportando a bandeira Ticket.
v2.2.7
- Correções do erro
ClassNotFoundException
em algumas classes da SDK.
v2.2.6
- Opção de enviar uma transação não capturada:
StoneTransaction stoneTransaction = new StoneTransaction();
// set dos valores da transação
stoneTransaction.disableCapture(); // desabilita a captura da transação
Default
Por padrão, a transação é capturada!
v2.2.5
- Transações com tarja sem senha e com senha.
- Correções nas conexões com a internet.