Clipper On Line • Ver Tópico - Harbour + Android uma realidade!

Harbour + Android uma realidade!

Projeto Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

 

Harbour + Android uma realidade!

Mensagempor janio » 06 Mai 2019 14:02

A diferença entre mobile x web eh galática, e a compreensão disso mostra o quão em campos opostos estamos.

Mas sem encompridar a conversa, até pq quem está com a necessidade real de fato em desenvolver algo mobile, já deu pra entender.

Vamos apenas pegar um caso prático que todo mundo consegue entender:
Se mobile e web fossem a mesma coisa (em termos de programação), pq qual motivo, razão ou circunstância (tô parecendo o professor Girafales kkk), as pessoas e empresas passariam horas, dias, semanas, meses e anos estudando, desenvolvendo e testando uma aplicação "nativa" mobile, se ele poderia economizar todo esse tempo, recursos e dinheiro dizendo simplesmente para a pessoa: "Abre o navegador e digita www.bb.com.br"???? Pq será que o Banco do Brasil mobiliza certamente dezenas de programadores quando ele poderia dizer pra todo mundo usar o navegador?
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Avatar de usuário

janio
Colaborador

Colaborador
 
Mensagens: 1835
Data de registro: 06 Jul 2004 07:43
Cidade/Estado: UBAJARA - CE
Curtiu: 8 vezes
Mens.Curtidas: 68 vezes

Harbour + Android uma realidade!

Mensagempor Itamar M. Lins Jr. » 06 Mai 2019 14:11

Ola!
Olha ai uma app web (para qualquer coisa)

http://www.advproc.cf/

Usuário: Pctoledo
Senha: pctoledo

É um estudo que faço.(Harbour/Html5+CSS+Javascript)
Montei um servido na nuvem (gcloud), criei um dominio(freenom) e liguei lá no cloudfire!
Está rodando em uma maquina virtual(instancia) Unbuntu 19 no gcloud.
Posso fazer a mesma coisa usando Windows, uma plaicação inteira ERP colocar lá no gcloud em uma VM(win10 conteiner) e acessar via RDP, já testei aqui com Remmina(linux) roda a mesma coisa, onde estiver meus servidores, estarão lá ;)

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Harbour + Android uma realidade!

Mensagempor MSDN » 06 Mai 2019 14:26

Existe diferença, claro, o sistema operacional Android que utiliza o Linux como base, tem a sua API, assim como Windows tem a sua, e um aplicativo WEB, ele não se prende em API's, e sim em comandos universais que qualquer navegador para a Internet utiliza, que seria HTML e JavaScript, então, se vc tem uma aplicação WEB que foi pensada de forma RESPONSIVA, vai funcionar em qualquer navegador para a internet, seja ele usado no Android, Ios, Windows, BeoS, Linux, etc, e para muitos casos, ele serve muito bem para ser usado em um dispositivo mobile, é perfeito, é leve e com um código somente funciona em uma infinidade de lugares, PORÉM...certas atividades precisam de maior precisão, segurança, interação, etc, e só conseguem acessar a API dos dispositivos móveis ( Android e Ios ) através de linguagens específicas voltadas para a programação mobile, o que seria o caso de Flutter para Android e Objective C para Ios, por isso o BB e todos os outros bancos, além de ter sua plataforma WEB, tem a MOBILE tbem, além do que, se vc quiser ter um APP na loja do Android ou do Ios, é obrigado a seguir certas regras.
MSDN
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 741
Data de registro: 28 Nov 2003 14:55
Cidade/Estado: CWB
Curtiu: 178 vezes
Mens.Curtidas: 123 vezes

Harbour + Android uma realidade!

Mensagempor Itamar M. Lins Jr. » 06 Mai 2019 14:44

Ola!
Motivos, devem existir. (usar recursos do smartphone) monitorar a vida da pessoa.
Uma aplicação mal intencionada, grava até o que vc está falando, liga a câmera do celular por exemplo...
Mas o facebook roda sem precisar instalar o .apk, os motivos deles disponibilizar uma .apk é que ela roda em segundo plano.
Instale ai o terminal no seu smartphone e digita o comando "top", só para ver a bagaceira do facebook.apk e instagran.apk consumindo a memória e CPU toda rsrsrs... Como que chega as mensagens no WhatsApp por exemplo ? Ele fica monitorando a porta TCP 5222/5223 se tem msg o tempo todo...
Assim faz o facebooklite.apk, e outros tantos...

No caso se não tiver internet, como é que a pessoa vai gravar o pedido ? Uma aplicação .apk tem suas finalidades.
Mas isso também podemos fazer com html+css+javascript usando a WEBKIT do Android (veja o caso do PhoneGab) https://phonegap.com
Gera .apk da mesma forma, grava, no banco SQLITE e depois quando tiver online é só enviar.

Deslique a internet e o Whatsapp e Facebooklite, já era.
Já uma .APK de pedidos vai funcionar... cada qual tem seus interesses.

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Harbour + Android uma realidade!

Mensagempor Itamar M. Lins Jr. » 06 Mai 2019 14:55

Ola!
Olha só o código da pagina de login! É .PRG viu! tá ai rodando no seu MOBILE!

#!/usr/local/bin/hbrun
REQUEST HB_CODEPAGE_UTF8
REQUEST DBFCDX, DBFFPT
MemVar cIdUsuario, cUsuario, cSenha, cLogon, cManutencao
         
#xcommand TEXT TO VAR <var> => #pragma __stream|<var>:=%s
           
#xcommand ENDTEXT => #pragma __endtext

Function LoginMain(...)
LOCAL cEOL := + hb_eol() + hb_eol(), cHtml, lShared := .F., lIncluir := .T.
LOCAL cTxt := "", cOrd, cUs, cRet
PRIVATE cIdUsuario, cUsuario, cSenha, cLogon := "", cManutencao:=""

RddSetDefault("DBFCDX")
Set autopen On
hb_cdpSelect( "UTF8" )

cHtml := 'Content-type: text/html' + cEOL
cHtml += '<!DOCTYPE html>' + hb_eol()
cHtml += '<html>' + hb_eol()
cHtml += '<head>' + hb_eol()
cHtml += '<meta charset="UTF-8"/></head><body>' + hb_eol()

/*Pegar variaveis*/
PegaVar()

IF empty(cUsuario)
   Return ErrorHTML( "Informe o nome do usuário. - "  )  //retorna empty para "U" tambem
ENDIF
IF empty(cSenha)
   Return ErrorHTML( "Informe a senha." )
ENDIF

if hb_vfExists('usuarios.dbf')
else
   cRet := CriaStruUsuarios()
   if len(cRet) > 0
      return outstd(cRet)
   endif
   cRet := ordena_Usuarios()
   if len(cRet) > 0   
      return outstd(cRet)
   Endif
   OutStd( 'Content-type: text/html' + cEOL )
   cHtml := hb_memoread('../html/usuario.html')
   OutStd( cHtml )
   Return ""
endif

IF !AbreDb('usuarios.dbf','us',lShared)
   Return ErrorHTML( "Erro abrindo arquivo: usuarios.dbf" )
ENDIF

cOrd := us->(OrdSetFocus(1)) //nome
IF us->(DbSeeK(cUsuario))
   IF alltrim(cSenha) == alltrim(us->senha)
       TravaRegistro('us')
       us->logado := .T.
       us->entrada := date()     
       NetFlush('us')
       cLogon :=  HB_TTOC(us->dialog,"DD/MM/YYYY","HH:MM:SS.fff") //HB_TSTOSTR( us->dialog )
       cIdUsuario := hb_ntos(us->idusuario)
       cUsuario := alltrim(us->nome)
       IF cManutencao="on"
          Return opcoes()
       ELSE
          Return ChamaTelaPrincipal() //(cIdUsuario,cUsuario,cSenha)
       ENDIF
       //cTxt := [ <meta http-equiv="refresh" content="0;URL=/opcoes.html"> ]
   ELSE
      Return ErrorHTML( "Senha incorreta." )
   ENDIF
ELSE

   cUs := ""
   us->(DbGotop())
   Do while us->(!eof())
    cUs += us->nome + "<br>"
    us->(DbSkip())
   EndDo
   
   Return ErrorHTML( "Usuário não cadastrado: " + cUsuario + " --- " + str(len(cUsuario)) + "<br>" + cUS )
   
ENDIF

cHtml += cTxt + '</body></html>'

FechaDb('us')

Return OutStd(cHtml)

***************************
Function ChamaTelaPrincipal
***************************
*
*
LOCAL cHtml, cEOL := hb_eol() + hb_eol()

OutStd("Content-type: text/html" + cEOL )

TEXT TO VAR cHtml

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8"/>
    <title>Sistema SCADV</title>

    <script type="text/javascript">
    $(function(){
        window.location.href = $('.className').attr('href');
    });
    </script>
   
</head>
<body>

<form method="POST" action="/cgi-bin/TelaPrincipal.prg" >
    <input type="hidden" name="cIdUsuario" value="&cIdUsuario" />
    <input type="hidden" name="cUsuario" value="&cUsuario" />
    <a id="vai"href="javascript:document.querySelector('form').submit();">Clientes</a>
</form>

<script>
    document.getElementById("vai").click()
</script>

<!-- onclick="document.getElementById('vai').click();return false;" -->

<h2>Logon:&cLogon</h2>
</body>
</html>

EndText

Return OutStd(cHtml)

Function Opcoes
LOCAL cHtml, cEOL := hb_eol() + hb_eol()

OutStd("Content-type: text/html" + cEOL )

TEXT TO VAR cHtml

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8"/>
    <title>Sistema SCADV</title>
</head>
<body>
<form method="POST" action="/cgi-bin/TelaPrincipal.prg">
<ul id="nav">
    <input type="hidden" name="cIdUsuario" value="&cIdUsuario" />
    <input type="hidden" name="cUsuario" value="&cUsuario" />
    <li><a href="javascript:document.querySelector('form').submit();">Clientes</a>
    <li><a href="#">Procurar Clientes</a></li>
    <li><a href="#">Listar Clientes</a>
      <ul>
        <li><a href="usuario.html">Cadastrar Usuários</a></li>
        <li><a href="CriaEstruturaDBF.prg">Criar Base de Dados</a></li>
      </ul>
    </li>

    <li><a href="#">Contato</a></li>
</ul></form>
<h2>Logon:&cLogon</h2>
</body>
</html>

EndText

Return OutStd(cHtml)

SET PROCEDURE TO "funcoes.prg"
SET PROCEDURE TO "CriaEstruturaDBF.prg"


Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Harbour + Android uma realidade!

Mensagempor MSDN » 06 Mai 2019 15:59

Itamar, se vc reparar bem, as 2 primeiras postagens suas eu curti, e só escrevi minha postagem para contribuir com informação justa e correta, mas lendo as tuas duas últimas postagens, a impressão que dá não é que vc diverge ou não entende certos conceitos, mas que tem raiva do Facebook e do Whatsapp ou qualquer APP semelhante, a questão da "espionagem", isso é fato, público e notório, só morando numa caverna e olhe lá para ter privacidade, é só saber jogar o jogo, mais nada, então não acho justo levar a discussão para esse lado, que só confunde a cabeça de quem ainda tem dúvidas.
PS : válido o teu exemplo, mas estude sobre UI/UX.
MSDN
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 741
Data de registro: 28 Nov 2003 14:55
Cidade/Estado: CWB
Curtiu: 178 vezes
Mens.Curtidas: 123 vezes

Harbour + Android uma realidade!

Mensagempor Itamar M. Lins Jr. » 06 Mai 2019 16:17

Ola!
mas que tem raiva do Facebook e do Whatsapp ou qualquer APP semelhante

Tenho não, estava respondendo a pergunta do Janio. Porquê das .apks! São programas que ficam no nosso celular, rodando serviços que desconhecemos, a nossa revelia.
Meu cel é um Motorola G1, e já li em algum lugar que os desenvolvedores colocam códigos maliciosos para forçar a compra por novos.( o meu tá bem lento) deve ser alguma .apk que instalei, o instagram eu removi ficou melhor, pelo comando "top" (terminal) eu vi que ele fica baixando fotos etc...
Eu moro em lugar que não tinha internet, era CDMA a tecnologia...
mas estude sobre UI/UX.

Então é isso, são estudos que faço, não está nada pronto ai. Não sou Designer, peguei esses códigos HTML+CSS na internet, só para aprender.
Esses códigos eu escrevo na mão grande! Errando e aprendendo.

Não tenho trauma com tecnologia, nem com essas coisas novas sou aquariano. ;)

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Harbour + Android uma realidade!

Mensagempor JoséQuintas » 06 Mai 2019 17:52

O que o Jânio disse tem sentido, mas ele não soube explicar.

- aplicativo que rode no computador, sem precisar de internet
- aplicativo que rode no celular, sem precisar de internet
- aplicativo que rode na internet, que pode exigir recursos locais

Aqui é Brasil, e aqui nem tudo funciona:
tem bairro onde um celular pega e outro não.
Trabalhar off-line, só usando aplicativo específico pro computador/celular.

Hoje fiquei sem internet.
Pra passar o tempo, ia montar quebra-cabeças, o jig-saw da Microsoft.
Put. que par... joguinho grátis, instalado no computador, e não poder usar porque não tem internet, porque aquela bost. precisa confirmar o tempo, pra ver se precisa rodar propaganda.

Talvez joguinhos do DOS façam mais sucesso daqui pra frente....

Hummmmm.... tá explicado porque tanta coisa contra o flash player.... a grande maioria dos jogos em flashplayer rodam em qualquer plataforma, e até sem internet.... Se permitir flashplayer nem google nem Microsoft podem passar propaganda obrigatória....
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18014
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Harbour + Android uma realidade!

Mensagempor Itamar M. Lins Jr. » 06 Mai 2019 18:50

Ola!
O que o Jânio disse tem sentido, mas ele não soube explicar.

Sim, lógico e o Dr. Souto me passou um link de como empacotar os códigos Html+CSS+Javascript para criar uma apk, quando me queixei que não sabia ou pensava que não tinha essa opção.
Mas isso não invalida o uso (apenas) quando houver sinal. No caso como estou usando.
WEB é ṕara todos os dispositivos, desktop, mobile... Não vamos fazer confusão com isso.
Eu tenho esse livro:
https://www.americanas.com.br/produto/111052639 Velhinho... comprei em 2015 eu acho. Me esclareceu muita coisa.
Lendo o Capitulo 16, tem o seguinte:
Mas o Android SDK não é o único modo de construir e "entregar" aplicativos para a plataforma Android. Com a emergência de recursos acessíveis e poderosos nos navegadores móveis, agora é possível desenvolver aplicativos para a plataforma Android com tecnologias web, como Html, CSS e javascript...
16.1 O que é o desenvolvimento web Android ?

O que quero dizer nessa conversa é o seguinte, Android é JAVA + HTML + CSS + Javascript e XMLs a rodo, e qualquer coisa que faça uma aplicação para essa plataforma, pode ser feita até com um Clipper Summer, e o clipper terá que converter o código para essas citadas. Para dai serem compiladas pelo SDK. XMLs com requisições ás "Intents" via AndroidManifest.xml com as LIGAÇÕES etc e tals...Tem que entender de COMO funciona a plataforma Android, para depois com qualquer linguagem, mudar para o SDK "entender", compilar e gerar o pacote apk.

Duvido se a Windev gera uma .apk sem uso do SDK. Seria a mesma coisa que reinventar a roda, ainda por cima para concorrer com o próprio dono da plataforma.
Por isso no Harbour quando vamos mexer na parte "for Android", fica essa "dificulidade" toda. O Harbour está pronto para o Linux no qual o android roda, não tem nada para a plataforma Android, essa também foi uma confusão que fiz... Mas tô aprendendo...;)

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Harbour + Android uma realidade!

Mensagempor Itamar M. Lins Jr. » 06 Mai 2019 20:24

Ola!
Aprendendo sobre UI x UX. Gostei muito!
https://www.raffcom.com.br/blog/qual-a-diferenca-entre-ux-e-ui/
Também pode explicar mais para o Janio, a impossibilidade de comparar Mobile(móvel/mobilidade) com WEB, não faz sentido comparar.
WEB não é uma aplicação na internet, para computadores desktop, pode ser para qualquer coisa. Até sem monitor e teclado, telas etc... "GPS" seria um caso. Monitoramento cardíaco, etc... não precisa de teclado, basta colocar o aparelho e via WEB ele manda os dados... Uma WebCan em uma praia, por exemplo, não tem nada, só manda as imagens para algum lugar na WEB.

Imagem

Essa imagem explica com é complexo esse assunto.

Saudações,
Itamar M. Lins Jr.
Avatar de usuário

Itamar M. Lins Jr.
Colaborador

Colaborador
 
Mensagens: 6927
Data de registro: 30 Mai 2007 11:31
Cidade/Estado: Ilheus Bahia
Curtiu: 309 vezes
Mens.Curtidas: 503 vezes

Harbour + Android uma realidade!

Mensagempor microvolution » 07 Mai 2019 19:02

Itamar M. Lins Jr. escreveu:Olha só o código da pagina de login!
achei muito interessante.
Nobres, boa noite!
Itamar, eu queria algo assim, que o funcionário da empresa pudesse realizar as vendas via celular dele, ou seja, numa forma de intranet, quando o usuário entrasse o atalho ele rodasse a tela de vendas, como se estivesse no desktop... e fosse possível até ler o código de barras padrão EAN13 para fazer a venda. Ao finalizar imprimisse normalmente numa das impressoras de algum computador da rede.

Será que isso é possível?
Grato,
MICROVOLUTION - 16 anos Evoluindo Com Você!


Você já leu a Bíblia hoje?
João 3:16 - Porque Deus amou ao mundo de tal maneira que deu seu Único Filho para que todo aquele que nEle crê não pereça mas tenha a Vida Eterna!
microvolution
Usuário Nível 5

Usuário Nível 5
 
Mensagens: 1175
Data de registro: 02 Set 2011 22:17
Curtiu: 59 vezes
Mens.Curtidas: 17 vezes

Harbour + Android uma realidade!

Mensagempor RobertoLinux » 07 Jul 2019 12:57

Saudações e boa tarde.

Se for usar RDP encontrei isso ...

http://c-nergy.be/blog/?p=11868

Luz e Paz!
Entusiasta
Avatar de usuário

RobertoLinux
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 110
Data de registro: 14 Abr 2014 18:32
Cidade/Estado: Fortaleza/Ce
Curtiu: 7 vezes
Mens.Curtidas: 6 vezes

Anterior



Retornar para Harbour

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 11 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro