Alterações realizadas na aplicação
V4.11.1 (17/03/2025)
Mudanças importantes
- Versões minimas alteradas. Mais informação aqui.
- Kotlin: 1.9.0
 - Java: 17
 - Gradle: 7.3.3
 - Android Gradle Plugin: 7.2.0
 
 - Alteração na assinatura necessária. Mais informação aqui.
 
Correções
- 🐛 Corrige erros de build da versão 4.11.0
 
V4.11.0 (20/02/2025)
Mudanças importantes
- Versões minimas alteradas. Mais informação aqui.
- Kotlin: 1.9.0
 - Java: 17
 - Gradle: 7.3.3
 
 - Alteração na assinatura necessária. Mais informação aqui.
 
Novas Features
- ✨ Suporte a novo modelo: Tectoy T8
 
Correções
- ⬆️ Atualização das bibliotecas das fabricantes
 
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 
getQualifiersao 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 
minSdkVersioninferiores à 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.javaa 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_idaoTransactionObject 
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 
TransactionObjectno 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_ERRORquando 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 
ErrorsEnumo enum SDK_VERSION_IS_OUTDATED. - Adicionada a classe 
PosTransactionProvidero métodoonCardReTap. - Adicionada a classe 
PaymentFlowWrapperos métodosinstallApke 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_SENDINGcom 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<String>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 
ClassNotFoundExceptionem 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
DefaultPor 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.
 
