Skip to content

Commit

Permalink
Merge pull request #2432 from mercadopago/feature/new-main-apps
Browse files Browse the repository at this point in the history
Feature/new-main-apps
  • Loading branch information
hgaldino authored Nov 7, 2024
2 parents ff9901d + cf6df8d commit 27f2659
Show file tree
Hide file tree
Showing 55 changed files with 3,436 additions and 128 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# OAuth

O OAuth é um protocolo de autorização que permite que aplicações tenham acesso limitado às informações privadas das contas do Mercado Pago. Ele utiliza o protocolo HTTP e introduz uma camada de autenticação e autorização. Por meio desse protocolo, é possível solicitar acesso a recursos protegidos dos vendedores, utilizando um **Access Token** limitado a uma determinada aplicação, sem precisar das credenciais dos vendedores por meio de **fluxos de acesso**.
OAuth is an authorization protocol that allows applications to have limited access to private information from Mercado Pago accounts. It uses the HTTP protocol and introduces a layer of authentication and authorization. Through this protocol, it is possible to request access to protected resources of sellers using an **Access Token** that is limited to a specific application, without needing the sellers' credentials via **access flows**.

> NOTE
>
Expand Down
2 changes: 1 addition & 1 deletion guides/checkout-bricks/prerequisites.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ To perform a Bricks integration, you must meet the requirements listed below.
|---|---|
| Application | Applications are the different integrations in one or more stores. You can create an application for each solution you implement to keep everything organized and on track for easier management. Check [Your integrations](/developers/en/docs/checkout-bricks/additional-content/your-integrations/introduction) for more information on how to create an application. |
| Mercado Pago or Mercado Libre seller account | To integrate Bricks you need a seller account on Mercado Pago or Mercado Libre. If not, [click here](https://www.mercadopago[FAKER][URL][DOMAIN]/hub/registration/landing) to create. |
| Credentials | Unique passwords with which we identify an integration in your account. To perform the integrations, you will need the _Public key_ and the _Access Token_. [Click here](/developers/en/guides//checkout-bricks/additional-content/your-integrations/credentials) for more information. |
| Credentials | Unique passwords with which we identify an integration in your account. To perform the integrations, you will need the _Public key_ and the _Access Token_. [Click here](/developers/en/docs/checkout-bricks/additional-content/your-integrations/credentials) for more information. |
| Install the Mercado Pago SDK | Install the official SDKs to simplify your integration with our [APIs](/developers/en/reference/payments/_payments/post). For more information, [click here](/developers/en/docs/sdks-library/landing). |

If all the prerequisites are met, you can perform the Bricks integration.
2 changes: 1 addition & 1 deletion guides/checkout-bricks/prerequisites.es.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Para realizar la integración de los Bricks, debes cumplir con los requisitos qu
|---|---|
| Aplicación | Las aplicaciones son las diversas integraciones contenidas en una o varias tiendas. Puedes crear una aplicación para cada solución que implementes a fin de tener todo organizado y mantener un control que facilite la gestión. Consulta tu [Tus integraciones](/developers/es/docs/checkout-bricks/additional-content/your-integrations/introduction) para obtener más información sobre cómo crear una aplicación. |
| Cuenta de vendedor de Mercado Pago o Mercado Libre | Para integrar los Bricks necesitas una cuenta de vendedor en Mercado Pago o Mercado Libre. Sino, [haz clic aquí](https://www.mercadopago[FAKER][URL][DOMAIN]/hub/registration/landing) para crearla gratis. |
|Credenciales | Contraseñas únicas con las que identificamos una integración en tu cuenta. Para realizar las integraciones, necesitará la _Public key_ y el _Access Token_. [Haz clic aquí](/developers/es/guides/checkout-bricks/additional-content/your-integrations/credentials) para obtener más información. |
|Credenciales | Contraseñas únicas con las que identificamos una integración en tu cuenta. Para realizar las integraciones, necesitará la _Public key_ y el _Access Token_. [Haz clic aquí](/developers/es/docs/checkout-bricks/additional-content/your-integrations/credentials) para obtener más información. |
| Instalar el SDK de Mercado Pago | Instala los SDK oficiales para simplificar tu integración con nuestras [APIs](/developers/es/reference/payments/_payments/post). Para obtener más información, [haz clic aquí](/developers/es/docs/sdks-library/landing). |

Si se cumplen todos los requisitos previos, podrás realizar la integración de los Bricks.
20 changes: 20 additions & 0 deletions guides/mp-point-main-apps/access-settings.en.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Access settings

Use the `launch` method of the `BluetoothUiSettings` class to start with the bluetooth settings on Mercado Pago. That component provides several features, like activating and deactivating, searching for devices, and pairing and unpairing, among others. Check how to access it.

[[[
```kotlin
val bluetoothUiSettings = MPManager.bluetoothUiSettings

bluetoothUiSettings.launch(context)
```
```java
final BluetoothUiSettings bluetoothUiSettings = MPManager.INSTANCE.getBluetoothUiSettings();

bluetoothUiSettings.launch(context);
```
]]]

|Field|Description|
|---|---|
|**context (Context)**| It must be the context of the app and it’s mandatory to begin the activity.|
20 changes: 20 additions & 0 deletions guides/mp-point-main-apps/access-settings.es.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Acceder a la configuración

Usa el método `launch` de la clase `BluetoothUiSettings` para iniciar la actividad de configuración de bluetooth de Mercado Pago. Este componente ofrece diversas funcionalidades, cómo activar y desactivar, buscar dispositivos, emparejar y desemparejar, entre otros. Consulta cómo acceder.

[[[
```kotlin
val bluetoothUiSettings = MPManager.bluetoothUiSettings

bluetoothUiSettings.launch(context)
```
```java
final BluetoothUiSettings bluetoothUiSettings = MPManager.INSTANCE.getBluetoothUiSettings();

bluetoothUiSettings.launch(context);
```
]]]

|Campo|Descripción|
|---|---|
|**context (Context)**| Debe ser el contexto de la app y es obligatorio para iniciar la actividad.|
20 changes: 20 additions & 0 deletions guides/mp-point-main-apps/access-settings.pt.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Acessar configurações

Use o método `launch` da classe `BluetoothUiSettings` para iniciar a atividade de configurações de bluetooth do Mercado Pago. Esse componente proporciona diversas funcionalidades, como ativar e desativar, buscar dispositivos, emparelhar e desemparelhar, entre outras. Confira como acessá-lo.

[[[
```kotlin
val bluetoothUiSettings = MPManager.bluetoothUiSettings

bluetoothUiSettings.launch(context)
```
```java
final BluetoothUiSettings bluetoothUiSettings = MPManager.INSTANCE.getBluetoothUiSettings();

bluetoothUiSettings.launch(context);
```
]]]

|Campo|Descrição|
|---|---|
|**context (Context)**| Deve ser o contexto do aplicativo e é obrigatório para iniciar a atividade.|
12 changes: 6 additions & 6 deletions guides/mp-point-main-apps/distribution.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ For the distribution phase of your solution, follow these steps:
3. To upload your solution to the Mercado Pago ecosystem, guaranteeing the security of the application and its subsequent versions, digitally sign the certificate. This document must be the same for both the initial package and each update. Android provides a [step-by-step guide on how to digitally sign your app](https://developer.android.com/studio/publish/app-signing#generate-key) with the certificate generated by the developer.
4. Share the **.apk** package with the Mercado Pago support team. They will carry out a series of validations and notify the integrator company of the result.

> **The Mercado Pago support team is responsible for facilitating the following operations:**
> <br><br>
> - Delivery of new versions. <br>
> - Pre-configuration of devices. <br>
> - UX and security validations. <br>
> - Distribution of native APKs. <br>
The Mercado Pago support team is responsible for facilitating the following operations:

- **Delivery of new versions.**
- **Pre-configuration of devices.**
- **UX and security validations.**
- **Distribution of native APKs.**
12 changes: 6 additions & 6 deletions guides/mp-point-main-apps/distribution.es.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ Para la fase de distribución de tu solución, sigue estas etapas:
3. Para subir tu solución al ecosistema de Mercado Pago, garantizando la seguridad de la app y de tus posteriores versiones, suscribe al certificado de manera digital. Este documento debe ser el mismo tanto para el paquete inicial, como para cada una de las actualizaciones. Android disponibiliza [un paso a paso de cómo suscribir digitalmente la app](https://developer.android.com/studio/publish/app-signing?hl=es-419#generate-key), con el certificado generado por la persona desarrolladora.
4. Comparte el paquete **.apk**` com el equipo de soporte de Mercado Pago, que hará una serie de validaciones y avisará a la empresa integradora del resultado.

> **El equipo de soporte de Mercado Pago es responsable de facilitar las siguientes operaciones:**
> <br><br>
> - Entrega de nuevas versiones. <br>
> - Pre-configuración de los dispositivos. <br>
> - Validaciones de UX y Seguridad. <br>
> - Distribución de los APKs nativos.
El equipo de soporte de Mercado Pago es responsable de facilitar las siguientes operaciones:

- **Entrega de nuevas versiones.**
- **Pre-configuración de los dispositivos.**
- **Validaciones de UX y Seguridad.**
- **Distribución de los APKs nativos.**
12 changes: 6 additions & 6 deletions guides/mp-point-main-apps/distribution.pt.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ Para a fase de distribuição da sua solução, siga estas etapas:
3. Para subir sua solução ao ecossistema do Mercado Pago, garantindo a segurança do aplicativo e de suas posteriores versões, faça a assinatura digital do certificado. Este documento deve ser o mesmo tanto para o pacote inicial, como para cada uma das atualizações. O Android disponibiliza [um passo a passo de como assinar o app digitalmente](https://developer.android.com/studio/publish/app-signing?hl=pt-br#generate-key), com o certificado gerado pela pessoa desenvolvedora.
4. Compartilhe o pacote **.apk** com a equipe de suporte do Mercado Pago. Ela fará uma série de validações e notificará a empresa integradora sobre o resultado.

> **A equipe de suporte do Mercado Pago é responsável por facilitar as seguintes operações:**
> <br><br>
> - Entrega de novas versões. <br>
> - Pré-configuração dos dispositivos. <br>
> - Validações de UX e segurança. <br>
> - Distribuição dos APKs nativos. <br>
A equipe de suporte do Mercado Pago é responsável por facilitar as seguintes operações:

- **Entrega de novas versões.**
- **Pré-configuração dos dispositivos.**
- **Validações de UX e segurança.**
- **Distribuição dos APKs nativos.**
51 changes: 50 additions & 1 deletion guides/mp-point-main-apps/first-steps.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,56 @@ dependencies {
}
```

3. In the **AndroidManifest.xml** file, define the main activity that will be set as the application launcher. Add the following `intent-filter`:
3. The correct configuration of metadata in the **AndroidManifest.xml** file is crucial to ensure optimal functioning and full integration of our SDK into your application. The metadata allows you to define essential and customized settings that the SDK needs to operate properly, adapting to the specific needs of each application and its usage environment. To do this, configure the following information:

- **CLIENT_ID**: to identify the transactions of the integrators, indicate the [credential](/developers/en/docs/main-apps/additional-content/your-integrations/credentials) **Client ID** that was assigned to the application created in the [Developer dashboard](/developers/en/docs/checkout-bricks/additional-content/your-integrations/dashboard).

```xml
<application
...>

<meta-data

android:name="com.mercadolibre.android.sdk.CLIENT_ID"
android:value="123456789L" />

<!-- Other application settings -->
</application>
```

> WARNING
>
> Important
>
> It is crucial that the metadata name is exactly `com.test.android.sdk.CLIENT_ID`. Any variation in the name may result in the SDK not recognizing the field.
> <br><br>
> Additionally, make sure that the **Client ID** value ends with the letter "L" to indicate that it is a Long type number. This is necessary for the SDK to process the value correctly.

- **OAUTH_ENABLED**: use the `OAUTH_ENABLED` field to enable the [OAuth](/developers/en/docs/main-apps/additional-content/security/oauth/introduction) authorization protocol, which is necessary when devices will be used with accounts different from that of the application developer. This field is optional, and if it is not added to the metadata, it will be considered the default value `false`.

```xml
<application
...>

<meta-data

android:name="com.mercadolibre.android.sdk.OAUTH_ENABLED"
android:value="true" />

<!-- Other application settings -->

</application>
```

> WARNING
>
> Important
>
> It is crucial that the metadata name is exactly `com.mercadolibre.android.sdk.OAUTH_ENABLED`. Any variation in the name may result in the SDK not recognizing the field.
> <br><br>
> Make sure to correctly set the value of the field to only `true` or `false`, according to the need to enable or not the [OAuth](/developers/en/docs/main-apps/additional-content/security/oauth/introduction) protocol. If not specified, the default value will be `false`.

4. Still in the **AndroidManifest.xml** file, define the main activity that will be set as the application launcher. Add the following `intent-filter`:

```xml
<intent-filter>
Expand Down
51 changes: 50 additions & 1 deletion guides/mp-point-main-apps/first-steps.es.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,56 @@ dependencies {
}
```

3. En el archivo **AndroidManifest.xml**, define la actividad principal que se establecerá como _launcher_ de la app. Agrega los siguientes `intent-filter`:
3. La configuración correcta de metadata en el archivo **AndroidManifest.xml** es crucial para garantizar el funcionamiento óptimo y la integración completa de nuestro SDK en tu aplicación. La metadata permite definir configuraciones esenciales y personalizadas que el SDK necesita para operar adecuadamente, adaptándose a las necesidades específicas de cada aplicación y su entorno de uso. Para ello, configure las siguientes información:

- **CLIENT_ID**: para identificar las transacciones de los integradores, indica la [credencial](/developers/es/docs/main-apps/additional-content/your-integrations/credentials) **Client ID** que fue asignada a la aplicación creada en el [Panel del desarrollador](/developers/es/docs/checkout-bricks/additional-content/your-integrations/dashboard).

```xml
<application
...>

<meta-data

android:name="com.mercadolibre.android.sdk.CLIENT_ID"
android:value="123456789L" />

<!-- Otras configuraciones de la aplicación -->
</application>
```

> WARNING
>
> Importante
>
> Es crucial que el nombre de la metadata sea exactamente `com.test.android.sdk.CLIENT_ID`. Cualquier variación en el nombre puede resultar en la falta de reconocimiento del campo por parte del SDK.
> <br><br>
> Además, asegúrate de que el valor del **Client ID** termine con la letra "L" para indicar que es un número del tipo _Long_. Esto es necesario para que el SDK procese correctamente el valor.

- **OAUTH_ENABLED**: utiliza el campo `OAUTH_ENABLED` para activar el protocolo de autorización [OAuth](/developers/es/docs/main-apps/additional-content/security/oauth/introduction), que es necesario cuando los dispositivos se utilizarán con cuentas diferentes a la del desarrollador de la aplicación. Este campo es opcional y, si no se agrega en la metadata, se considerará el valor predeterminado `false`.

```xml
<application
...>

<meta-data

android:name="com.mercadolibre.android.sdk.OAUTH_ENABLED"
android:value="true" />

<!-- Otras configuraciones de la aplicación -->

</application>
```

> WARNING
>
> Importante
>
> Es crucial que el nombre de la metadata sea exactamente `com.mercadolibre.android.sdk.OAUTH_ENABLED`. Cualquier variación en el nombre puede resultar en la falta de reconocimiento del campo por parte del SDK.
> <br><br>
> Asegúrate de definir correctamente el valor del campo solo con `true` o `false`, de acuerdo con la necesidad de habilitar o no el protocolo [OAuth](/developers/es/docs/main-apps/additional-content/security/oauth/introduction). Si no se especifica, el valor predeterminado será `false`.

4. Aún en el archivo **AndroidManifest.xml**, define la actividad principal que se establecerá como _launcher_ de la app. Agrega los siguientes `intent-filter`:

```xml
<intent-filter>
Expand Down
50 changes: 49 additions & 1 deletion guides/mp-point-main-apps/first-steps.pt.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,55 @@ dependencies {
}
```

3. No arquivo **AndroidManifest.xml**, defina a atividade principal que será estabelecida como _launcher_ da aplicação. Adicione os seguintes `intent-filter`:
3. A configuração correta de metadata no arquivo **AndroidManifest.xml** é crucial para garantir o funcionamento ideal e a integração completa do nosso SDK em sua aplicação. A metadata permite definir configurações essenciais e personalizadas que o SDK precisa para operar adequadamente, adaptando-se às necessidades específicas de cada aplicação e seu ambiente de uso. Para isso, configure as seguintes informações:

- **CLIENT_ID**: para identificar as transações dos integradores, indique a [credencial](/developers/pt/docs/main-apps/additional-content/your-integrations/credentials) **Client ID** que foi atribuída à aplicação criada no [Painel do desenvolvedor](/developers/pt/docs/checkout-bricks/additional-content/your-integrations/dashboard).

```xml
<application
...>

<meta-data

android:name="com.mercadolibre.android.sdk.CLIENT_ID"
android:value="123456789L" />

<!-- Outras configurações da aplicação -->
</application>
```

> WARNING
>
> Importante
>
> É crucial que o nome da metadata seja exatamente `com.test.android.sdk.CLIENT_ID`. Qualquer variação no nome pode resultar na falta de reconhecimento do campo pelo SDK.
> <br><br>
> Além disso, certifique-se de que o valor do **Client ID** termine com a letra "L" para indicar que é um número do tipo _Long_. Isso é necessário para que o SDK processe corretamente o valor.

- **OAUTH_ENABLED**: utilize o campo `OAUTH_ENABLED` para ativar o protocolo de autorização [OAuth](/developers/pt/docs/main-apps/additional-content/security/oauth/introduction), que é necessário quando os dispositivos serão usados com contas diferentes da do desenvolvedor da aplicação. Este campo é opcional e, caso não seja adicionado na metadata, será considerado o valor padrão `false`.

```xml
<application
...>

<meta-data

android:name="com.mercadolibre.android.sdk.OAUTH_ENABLED"
android:value="true" />

<!-- Outras configurações da aplicação -->
</application>
```

> WARNING
>
> Importante
>
> É crucial que o nome da metadata seja exatamente `com.mercadolibre.android.sdk.OAUTH_ENABLED`. Qualquer variação no nome pode resultar na falta de reconhecimento do campo pelo SDK.
> <br><br>
> Certifique-se de definir corretamente o valor do campo apenas com `true` ou `false`, de acordo com a necessidade de habilitar ou não o protocolo [OAuth](/developers/pt/docs/main-apps/additional-content/security/oauth/introduction). Se não for especificado, o valor padrão será `false`.

4. Ainda no arquivo **AndroidManifest.xml**, defina a atividade principal que será estabelecida como _launcher_ da aplicação. Adicione os seguintes `intent-filter`:

```xml
<intent-filter>
Expand Down
Loading

0 comments on commit 27f2659

Please sign in to comment.