none
Xamarin forms - Abrir Aplicativos terceiro. RRS feed

  • Pergunta

  • Estou com um problema para implementar algumas opções na minha aplicação desenvolvida pelo xamarin forms. Hoje já possuo as aplicações desenvolvidas nativamente (usando android studio, xcode, e c#) para cada plataforma, porém como uma  forma de produtividade e custos estou migrando para o xamarin forms.

    Um dos problemas que estou tento é em relação a abrir uma aplicação de terceiros, pois possuo dois aplicativos, onde um tem um link para abrir o outro, mas no xamarin forms não encontrei uma opção que faça isso, tem o método device.ulr porém ele só abre aplicativos nativos (maps, telefone, navegador etc).

    Algumas pesquisas realizadas tive como informação que teria que fazer injeção de dependência para determinar como cada plataforma irá chamar outro aplicativo, porém isso traz alguns problemas.

    1º Estou notando que muitas funcionalidades me obriga fazer injeção de dependência pois o xamarin forms não trata, por exemplo o sql lite, tive que aplicar devido a forma de cada mobile gerenciar a gravação de arquivo em memória, com isso temos alguns códigos escrito para cada plataforma, e caso seja necessário uma manutenção é necessário aplicar em todas (perdendo a vantagem de ser cross plataform).

    2º Trabalho com dois projetos da mesma aplicação, uma com a tela de login onde cada cliente tem essa tela customizada, e outra com o outras telas (xamarin forms lib) que são comuns entre os clientes, pois assim quando realizamos a manutenção para um cliente, não se faz necessário corrigir para todos. No xamarin para android, consigo trabalhar de forma que o projeto principal converse com o projeto que possui apenas a tela de login, pois minha regra de negócio da tela de login fica no projeto principal e somente o layout deixo no projetor referente a tela de login (pois somente layout que muda de cliente para cliente) e quando faço uma manutenção de negócio é somente uma.

    Como no xamarin forms o xaml é junto com o .cs, não consigo ter o layout apenas em um projeto e o .cs em outro, com isso tenho que referencia a dll do projeto principal dentro do projeto da tela de login e consigo acessar todos os métodos perfeito, porém tem situações que preciso acessar os métodos da tela de login no projeto principal e isso não é possível. por exemplo para abrir a tela que esta em outro projeto sou obrigado mandar ela na chamada do método e instanciar uma page no projeto principal para poder voltar a pagina inicial. No Xamarin android não tenho esse problema.

    Alguém conhece uma solução para essa minha necessidade, a necessidade principal no momento é a possibilidade de abrir um aplicativo terceiro, no cenário atual (o projeto tela de login) pois o projeto principal é uma lib do xamarin forms, não tendo opção de fazer a injeção de dependência por ele, porém a tela que chama o outro app, esta no projeto principal.

    segunda-feira, 26 de dezembro de 2016 11:03

Respostas