Índice
Objetivo
O fluxo de termos de uso integrado no SDK serve para facilitar a aceitação dos termos de uso de aplicativos na plataforma fluig, provendo não só um meio de mostrar os termos de uso como também de interromper acesso a outros conteúdos. O acesso só é liberado uma vez que os termos forem aceitos pelo usuário.
Integração
Para integrar o login no seu aplicativo, siga os seguintes passos:
- Certifique-se que o módulo bllCore do SDK foi adicionado como dependência no seu build.gradle.
Adicione no AndroidManifest do seu aplicativo, as seguintes activities.
Bloco de código |
---|
language | xml |
---|
title | AndroidManifest.xml |
---|
collapse | true |
---|
|
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.myapp.package">
<application
android:name=".Application"
... >
...
<activity
android:name="sdk.fluig.com.bll.core.eula.accept.view.EulaAcceptActivity"
android:theme="@style/FluigEulaTheme.Light"
android:screenOrientation="portrait" />
<activity
android:name="sdk.fluig.com.bll.core.eula.terms.view.EulaTermsActivity"
android:theme="@style/FluigEulaTheme.Light" />
</application>
</manifest> |
Altere o fluxo do aplicativo para os termos de uso. Para isso, chame o método start
da classe EulaFlow
. Para instanciar EulaFlow
, é necessário para um Context
como primeiro parâmetro. O segundo parâmetro é opcional e indicará o nome da aplicação para o qual os termos de uso se refere. O método start
não possui parâmetros. Ao terminar o fluxo, será enviado um Broadcast
informando se o usuário aceitou ou não os Termos de Uso.
Bloco de código |
---|
language | java |
---|
title | MyActivity.java |
---|
collapse | true |
---|
|
import sdk.fluig.com.bll.core.utils.TermsUtils;
public class MyActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
...
//não esqueça de registrar um receptor para o broadcast enviado pelo fluxo
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(EulaFlow.ACTION_DID_ACCEPT);
intentFilter.addAction(EulaFlow.ACTION_DID_NOT_ACCEPT);
registerReceiver(getEulaReceiver(), intentFilter);
//Para chamar o fluxo sem alterações.
//Por padrão, o SDK irá pegar o nome de seu aplicativo no texto de aviso.
new EulaFlow(MyActivity.this).start();
//Caso não deseje o nome do seu aplicativo no texto de aviso, passe outro parâmetro no construtor.
//No caso abaixo, a tela principal irá avisar:
//"Antes de começar a usar o Meu Aplicativo, nós precisamos que você aceite os Termos de Uso."
new EulaFlow(MyActivity.this, "Meu Aplicativo").start();
}
private BroadcastReceiver getEulaReceiver() {
return new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
//Neste ponto, fica a critério do usuário decidir como continuar o fluxo de seu aplicativo.
//Pegue a action da Intent para checar se os termos foram aceitos ou não.
...
}
};
}
} |
Âncora |
---|
| personalizacoes |
---|
| personalizacoes |
---|
|
Personalizações
Existem elementos no layout dos termos de uso que podem ser personalizados. Esta seção expõe que elementos são esses e como alterá-los para aderir às suas preferências.
Tema
Na seção Integração, é possível notar que todas as activities do login compartilham do mesmo tema FluigEulaTheme
. Este tema possui duas variações: Light
e Dark
. A diferença entre essas variações é a cor usada nos textos.
Light
deve ser usado nas telas com fundo claro e, portanto, utiliza textos escuros.Dark
deve ser usado nas telas com fundo escuro e, portanto, utiliza textos claros.
Âncora |
---|
| nome-aplicacao |
---|
| nome-aplicacao |
---|
|
Nome da aplicação
No exemplo fornecido no passo 3 da seção Integração, é possível notar que existe um segundo parâmetro opcional do EulaFlow. Este parâmetro é nome da aplicação ao qual o fluxo de Termos de Uso se referenciará.
Bloco de código |
---|
language | java |
---|
title | Example.java |
---|
collapse | true |
---|
|
//Neste caso, a tela principal terá o seguinte texto:
//"Antes de começar a usar o Nome da aplicação, nós precisamos que você aceite os Termos de Uso."
new EulaFlow(myContext, "Nome da aplicação").start(); |
Âncora |
---|
| cores-de-fundo |
---|
| cores-de-fundo |
---|
|
Cor(es) de fundo
O fundo das telas dos termos de uso foi feito com o componente FluigSdkMediaView
. Entretanto, neste fluxo só é permitido alterar a(s) cor(es). Para isso, adicione no arquivo values/colors.xml um atributo com o nome eula_backgroundColor
e eula_backgroundColor_end
. Caso o atributo eula_backgroundColor_end
seja definido, será produzido um gradiente horizontal de duas cores.
Nota |
---|
|
A Toolbar de cada tela segue o mesmo padrão de cor(es) definido(s) acima. |
Logo da empresa
No topo da tela principal do fluxo há o logo da empresa. Por padrão, o logo mostrado é do fluig. Para alterar o logo, adicione uma imagem, no diretório drawable do seu aplicativo, com o nome eula_logo
.
Aviso |
---|
|
A imagem adicionada deve ter no máximo 195px (em mdpi) de altura e a largura deve obedecer o espaçamento dos aparelhos. |
Âncora |
---|
| conteudo-termos-de-uso |
---|
| conteudo-termos-de-uso |
---|
|
Conteúdo dos termos de uso
A tela que exibe os Termos de Uso propriamente dito carrega seu conteúdo de duas maneiras:
- Por meio de uma URL fornecida no arquivo
strings.xml
no diretório values. O atributo com a URL deve ser nomeado eula_url
. - Por meio de um arquivo HTML no diretório assets. Este arquivo deve ser nomeado
eula
.
Nota |
---|
|
Caso ambos meios sejam fornecidos ao SDK, a URL no arquivo strings.xml terá precedência. |