practice-uffs / app-practice

Aplicativo móvel do programa que permite que usuários usufruam das tecnologias do PRACTICE
MIT License
6 stars 10 forks source link

Implementar o Widget da Aura no app-practice #219

Closed GuilhermeGraeff closed 2 years ago

GuilhermeGraeff commented 2 years ago

Essa issue surgiu da issue #215

Verificamos, e é possível fazer a integração! Agora basta integrar \o/, o APK gerado a partir dos testes... Quando esta issue for concluída devemos replicar ela nos outros apps!

Atualmente existe em Aplicativos que o PRACTICE desenvolve em Framework7 uma Aura respectiva, isso é escalável?

Não parece ser escalável, como nós já temos a Aura centralizada na api e como visionamos que ela seja capaz de realizar diversas interações seria melhor ter os APPs utilizando o widget, pois as alterações então seriam feitas apenas em um lugar(na api), sem ter que replicar diversas vezes para cada app.

Algumas observações e bugs que foram elencados durante a verificação (elencadas por mim e pela @stefanimeneghetti ):


Código utilizado nos testes:

Como os testes foram realizados na branch dev, vou disponibilizar aqui o código que utilizei para realizar os testes, para que quem for realizar essa issue tenha alguma base...

aura.f7.html - (removeu todo o resto, muuuuuuuito código, chega a dar dó, talvez vale diexar em um backup o chat antigo)

<template>
    <div data-name="aura" id="tab_aura" style="height: 100%;">
        {{#if passport}}
            <iframe  style="width: 100%;height: 100%;" src="http://api.tests.practice.uffs.cc/v0/widgets/aura?token={{passport}}&type=fullscreen" frameborder="0" ></iframe>
        {{else}}
            <iframe  style="width: 100%;height: 100%;" src="http://api.tests.practice.uffs.cc/v0/widgets/aura?type=fullscreen" frameborder="0" ></iframe>
        {{/if}}
    </div>
</template>

<script>
    export default {
        data: function () {
            return {
                passport: null,
            }
        },
        on: {
            tabInit: function (e, page) {
                let self = this;
                let app = self.$app;
                let userCredentials = app.storage.getUserCredentials()
                self.$setState({
                        passport: userCredentials.passport
                        });
            }
        }
    };
</script>