Re: [androidbrasil-dev] Re: Problema ao enviar dados ao servidor - formulario do tipo multipart/form-data

Eu tenho que gerar um aqui na minha própria máquina ou isso é tarefa do servidor?
Estou um pouco perdido. Alguém pode me ajudar?

Em 31 de outubro de 2012 10:55, Diego Lopes Marques da Silva <diego.lopes@dce.ufpb.br> escreveu:
É. Pelo que eu tenho lido acho que é por ai mesmo.
Alguém saberia me dizer um bom tutorial para seguir?

Obrigado.

Em 30 de outubro de 2012 20:25, Ernani Joppert Pontes Martins <joppert@gmail.com> escreveu:
Vou tentar arriscar olhando seu código inicial.

Talvez vc precise gerar um KeyStore / TrustStore do zero, e adicionar no seu apk e mandar ele carregar no método load...

Posso estar enganado.

[]'s

Ernani


On Tue, Oct 30, 2012 at 9:23 PM, Ernani Joppert Pontes Martins <joppert@gmail.com> wrote:
Problemas de certificado SSL.

Seria legal dar uma lida como usar truststore e keystore antes, realmente eu nunca usei isso no Android, apenas em J2SE mesmo!

[]'s

Ernani


On Tue, Oct 30, 2012 at 7:41 PM, Diego Lopes Marques da Silva <diego.lopes@dce.ufpb.br> wrote:
Está ocorrendo esse problema ai.

10-30 18:26:53.016: E/NativeCrypto(6673): Unknown error 5 during connect
10-30 18:26:53.026: E/EasyLogCore(6673): HttpRequestCore.getRequest - SSL handshake failure: I/O error during system call, Connection reset by peer
10-30 18:26:53.026: E/EasyLogCore(6673): java.io.IOException: SSL handshake failure: I/O error during system call, Connection reset by peer
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.nativeconnect(Native Method)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:316)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl$SSLInputStream.<init>(OpenSSLSocketImpl.java:520)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.getInputStream(OpenSSLSocketImpl.java:461)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.io.SocketInputBuffer.<init>(SocketInputBuffer.java:93)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.SocketHttpClientConnection.createSessionInputBuffer(SocketHttpClientConnection.java:83)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.conn.DefaultClientConnection.createSessionInputBuffer(DefaultClientConnection.java:170)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.SocketHttpClientConnection.bind(SocketHttpClientConnection.java:106)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.conn.DefaultClientConnection.openCompleted(DefaultClientConnection.java:129)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:181)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:348)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:653)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:627)
10-30 18:26:53.026: E/EasyLogCore(6673):     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:616)
10-30 18:26:53.026: E/EasyLogCore(6673):     at br.com.avaty.easylog.core.http.HttpRequestCore.getRequest(HttpRequestCore.java:79)
10-30 18:26:53.026: E/EasyLogCore(6673):     at br.com.avaty.easylog.core.Controller$1.run(Controller.java:156)
10-30 18:26:53.026: E/EasyLogCore(6673):     at java.lang.Thread.run(Thread.java:1096)


2012/10/30 Vinicius Maciel <vnc.maciel@gmail.com>
Que problema exatamente ? Tenta especificar melhor, aí fica mais fácil para nós ajudarmos.

Abs

Em terça-feira, 30 de outubro de 2012 16h59min56s UTC-2, Diego Lopes escreveu:
Pessoal,

Estou com problemas para enviar esses dados ao servidor.
Alguém pode me dizer aonde estou errando?
Obrigado

public synchronized void sendEntregaThread(final Entrega entrega, final Context context) {
        new Thread(new Runnable() {
           
            @Override
            public void run() {
                String res = null;
                try {
                    KeyStore trustStore = KeyStore.getInstance(KeyStore.getDefaultType());
                    trustStore.load(null, null);
           
                    SSLSocketFactory sf = new MySSLSocketFactory(trustStore);
                    sf.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
                   
                    HttpParams params = new BasicHttpParams();
                    HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
                    HttpProtocolParams.setContentCharset(params, HTTP.UTF_8);

                    SchemeRegistry registry = new SchemeRegistry();
                    registry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));
                    registry.register(new Scheme("https", sf, 8080));

                    ClientConnectionManager ccm = new ThreadSafeClientConnManager(params, registry);
                   
                    HttpClient httpClient = new DefaultHttpClient(ccm, params);
                    HttpPost postRequest = new HttpPost("MEU SERVIÇO DE ENTREGA AO SERVIDOR");
                   
                   
                    MultipartEntity multipartContent = new MultipartEntity();

                    try {
                        if ((entrega.getImg() != null) && (!entrega.getImg().equals(""))) {
                            InputStreamBody photoFis = new InputStreamBody( new FileInputStream( new File(entrega.getImg()) ), entrega.getImg() );
                            multipartContent.addPart("img_canhoto", photoFis);
                        }
                    } catch (FileNotFoundException e) {}       
                    try {
                        if ((entrega.getVideo() != null) && (!entrega.getVideo().equals(""))) {
                            InputStreamBody videoFis = new InputStreamBody( new FileInputStream( new File(entrega.getVideo()) ), entrega.getVideo() );
                            multipartContent.addPart("video", videoFis);
                        }
                    } catch (FileNotFoundException e) {}
                                   
                    multipartContent.addPart("video",new StringBody(entrega.getVideo()));
                    multipartContent.addPart("assinatura", new StringBody(entrega.getAssinatura()));
                    multipartContent.addPart("foto", new StringBody(entrega.getImg())  );
                    multipartContent.addPart("dataEntrega",new StringBody(entrega.getDataEntrega()) );
                   
                    postRequest.setEntity(multipartContent);
                    ResponseHandler<String> responseHandler = new BasicResponseHandler();
                   
                    res = httpClient.execute(postRequest, responseHandler);
                  
                  
                } catch (SocketException e) {
                    Log.e(Constants.TAG, e.getMessage(), e);
                    res = "ERROR";
                  
                } catch (Throwable e) {
                    Log.e(Constants.TAG, e.getMessage(), e);
                    res = "ERROR";
                  
                }
                NetConnectivityListener.isSync = false;
                Log.i(Constants.TAG, res);
                insertEntrega(entrega, context);
            }
           
        }).start();
    }


--
 
 







--
 
 


--
 
 








--
 
 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Re: [androidbrasil-dev] Problemas para Ativar e Desativar o GPS

Implementei algo do tipo. Chamo de ocorrências. Por exemplo GPS, NETWORK, 3G (desabilitados), BOOT, SHUTDOWN, etc..



Em 31 de outubro de 2012 16:07, luciofm <luciofm@gmail.com> escreveu:
Por isso que eu implementaria um relatório sobre os usuários que não
seguem as normas da empresa...



Lúcio Maciel
luciofm@gmail.com


2012/10/31 Gabriel Augusto <gabrielaugustodm@gmail.com>:
> Com certeza a melhor maneira é levar o usuario, Lucio.
>
> O problema é que deixar essa decisão na mão do usuario final do app
> (geralmente funcionarios que não tem intenção de contribuir com o serviço
> que, geralmente, visa controla-los de alguma maneira) pode acabar tornando o
> app desinteressante para o gestor dos funcionarios.
>
> Em 31 de outubro de 2012 15:02, luciofm <luciofm@gmail.com> escreveu:
>
>> Acho que a melhor maneira é sempre que detectar que o GPS está
>> desligado, pedir para o usuário liga-lo e abrir a tela de configuração
>> de localização para ele, pelo menos essa é a maneira mais portavel
>> para se fazer...
>>
>>
>> Lúcio Maciel
>> luciofm@gmail.com
>>
>>
>> 2012/10/31 Gabriel Augusto <gabrielaugustodm@gmail.com>:
>> > Também necessito disso na minha app e utilizo a primeira forma pois os
>> > devices são 2.2 e 2.3. Porém, se houvesse outra forma, também gostaria
>> > de
>> > saber, é uma restrição a menos na app.
>> >
>> > Abraço,
>> > Gabriel Augusto
>> >
>> > Em 31 de outubro de 2012 10:52, Derci Santos <derciii.lima@gmail.com>
>> > escreveu:
>> >
>> >> Bom dia galera,
>> >>
>> >> Estou desenvolvendo uma app onde me foi solicitado que o GPS seja
>> >> ativado
>> >> automaticamente ao ligar o device. Já descobri como faço para executar
>> >> algo
>> >> quando o device é iniciado, porém estou tendo um problema para ativar o
>> >> GPS.
>> >> Já vi que oficialmente não é correto ligar o GPS de forma automática,
>> >> porém
>> >> encontrei algumas formas alternativas de fazer tal procedimento.
>> >>
>> >> A primeira delas é a seguinte:
>> >>
>> >> Intent i = new Intent();
>> >> i.setClassName("com.android.settings",
>> >> "com.android.settings.widget.SettingsAppWidgetProvider");
>> >> i.addCategory(Intent.CATEGORY_ALTERNATIVE);
>> >> i.setData(Uri.parse("custom:3"));
>> >>
>> >> sendBroadcast(i);
>> >>
>> >> Crio uma intent e a envio em forma de broadcast ao sistema operaciona.
>> >> Essa forma só funcionou em versões anteriores a versão 3.0 do Android.
>> >> Da
>> >> 3.0 acima não funciona.
>> >>
>> >> A segunda forma que encontrei de fazer isso foi a seguinte:
>> >>
>> >> Intent i = new Intent("android.location.GPS_ENABLED_CHANGE");
>> >> i.putExtra("enabled", ligar);
>> >> sendBroadcast(i);
>> >>
>> >> Também crio uma intent e a envio para o sistema operacional. Essa só
>> >> fez
>> >> com que o icone de buscando do GPS ficasse piscando na barra de
>> >> notificação.
>> >> Mas em todos os lugares que olho o GPS está desabilitado.
>> >>
>> >>
>> >> Alguém tem alguma ideia de como posso proceder pra fazer tal rotina.
>> >> Lembrando que estou ciente que não é a forma correta de se fazer, mas
>> >> não
>> >> queria que fosse preciso abrir a tela de preferencias do android para
>> >> habilitar ou desabilitar o GPS.
>> >>
>> >> Desde já agradeço a atenção de todos.
>> >>
>> >> --
>> >>
>> >> Att,
>> >> Derci Santos
>> >> Skype: dercilima
>> >> about.me/dercilima
>> >>
>> >> Recomendação se for reenviar esta mensagem, por favor:
>> >>
>> >> 1. Apague o MEU endereço eletrônico e todos os outros constantes do
>> >> e-mail;
>> >> 2. Encaminhe como CÓPIA OCULTA (Cco ou Bcc) aos seus destinatários.
>> >> 3. Agindo desta forma, você estará colaborando para dificultar a
>> >> disseminação de vírus e spams, e também para tornar a internet mais
>> >> segura.
>> >>
>> >> --
>> >>
>> >>
>> >
>> >
>> >
>> >
>> > --
>> > Abraços,
>> > Gabriel Augusto
>> > 013 97940055
>> >
>> > --
>> >
>> >
>>
>> --
>>
>>
>
>
>
> --
> Abraços,
> Gabriel Augusto
> 013 97940055
>
> --
>
>

--





--
Abraços,
Gabriel Augusto

--
 
 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Re: [androidbrasil-dev] Problemas para Ativar e Desativar o GPS

É o que sempre digo... 


"Também não da pra fazer mágica."


Em 31 de outubro de 2012 16:25, Derci Santos <derciii.lima@gmail.com> escreveu:
Olha gente,

Já imaginei que não teria uma forma "correta" de se fazer esse procedimento funcionar em todas as versões do Android. Para tentar resolver isso, fiz da seguinte forma:

Quando ligar o device, eu tenho um BroadcastReceiver que executa assim que o termina o boot, ele verifica se o GPS está ativo, caso não esteja emite uma notificação solicitando que o usuário habilite o GPS.
Quando o usuário clica nessa notificação, eu envio uma intent ao sistema operacional solicitando a abertura da tela de configuração onde habilita o GPS: Intent i = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
A notificação só é cancelada quando o usuário habilitar o GPS.

Agradeço a atenção e ajuda de todos.

Caso alguém teve alguma dúvida de como eu fiz, basta pedir que envio os fontes e explico.

Abraços.


Em 31 de outubro de 2012 16:07, luciofm <luciofm@gmail.com> escreveu:

Por isso que eu implementaria um relatório sobre os usuários que não
seguem as normas da empresa...



Lúcio Maciel
luciofm@gmail.com


2012/10/31 Gabriel Augusto <gabrielaugustodm@gmail.com>:
> Com certeza a melhor maneira é levar o usuario, Lucio.
>
> O problema é que deixar essa decisão na mão do usuario final do app
> (geralmente funcionarios que não tem intenção de contribuir com o serviço
> que, geralmente, visa controla-los de alguma maneira) pode acabar tornando o
> app desinteressante para o gestor dos funcionarios.
>
> Em 31 de outubro de 2012 15:02, luciofm <luciofm@gmail.com> escreveu:
>
>> Acho que a melhor maneira é sempre que detectar que o GPS está
>> desligado, pedir para o usuário liga-lo e abrir a tela de configuração
>> de localização para ele, pelo menos essa é a maneira mais portavel
>> para se fazer...
>>
>>
>> Lúcio Maciel
>> luciofm@gmail.com
>>
>>
>> 2012/10/31 Gabriel Augusto <gabrielaugustodm@gmail.com>:
>> > Também necessito disso na minha app e utilizo a primeira forma pois os
>> > devices são 2.2 e 2.3. Porém, se houvesse outra forma, também gostaria
>> > de
>> > saber, é uma restrição a menos na app.
>> >
>> > Abraço,
>> > Gabriel Augusto
>> >
>> > Em 31 de outubro de 2012 10:52, Derci Santos <derciii.lima@gmail.com>
>> > escreveu:
>> >
>> >> Bom dia galera,
>> >>
>> >> Estou desenvolvendo uma app onde me foi solicitado que o GPS seja
>> >> ativado
>> >> automaticamente ao ligar o device. Já descobri como faço para executar
>> >> algo
>> >> quando o device é iniciado, porém estou tendo um problema para ativar o
>> >> GPS.
>> >> Já vi que oficialmente não é correto ligar o GPS de forma automática,
>> >> porém
>> >> encontrei algumas formas alternativas de fazer tal procedimento.
>> >>
>> >> A primeira delas é a seguinte:
>> >>
>> >> Intent i = new Intent();
>> >> i.setClassName("com.android.settings",
>> >> "com.android.settings.widget.SettingsAppWidgetProvider");
>> >> i.addCategory(Intent.CATEGORY_ALTERNATIVE);
>> >> i.setData(Uri.parse("custom:3"));
>> >>
>> >> sendBroadcast(i);
>> >>
>> >> Crio uma intent e a envio em forma de broadcast ao sistema operaciona.
>> >> Essa forma só funcionou em versões anteriores a versão 3.0 do Android.
>> >> Da
>> >> 3.0 acima não funciona.
>> >>
>> >> A segunda forma que encontrei de fazer isso foi a seguinte:
>> >>
>> >> Intent i = new Intent("android.location.GPS_ENABLED_CHANGE");
>> >> i.putExtra("enabled", ligar);
>> >> sendBroadcast(i);
>> >>
>> >> Também crio uma intent e a envio para o sistema operacional. Essa só
>> >> fez
>> >> com que o icone de buscando do GPS ficasse piscando na barra de
>> >> notificação.
>> >> Mas em todos os lugares que olho o GPS está desabilitado.
>> >>
>> >>
>> >> Alguém tem alguma ideia de como posso proceder pra fazer tal rotina.
>> >> Lembrando que estou ciente que não é a forma correta de se fazer, mas
>> >> não
>> >> queria que fosse preciso abrir a tela de preferencias do android para
>> >> habilitar ou desabilitar o GPS.
>> >>
>> >> Desde já agradeço a atenção de todos.
>> >>
>> >> --
>> >>
>> >> Att,
>> >> Derci Santos
>> >> Skype: dercilima
>> >> about.me/dercilima
>> >>
>> >> Recomendação se for reenviar esta mensagem, por favor:
>> >>
>> >> 1. Apague o MEU endereço eletrônico e todos os outros constantes do
>> >> e-mail;
>> >> 2. Encaminhe como CÓPIA OCULTA (Cco ou Bcc) aos seus destinatários.
>> >> 3. Agindo desta forma, você estará colaborando para dificultar a
>> >> disseminação de vírus e spams, e também para tornar a internet mais
>> >> segura.
>> >>
>> >> --
>> >>
>> >>
>> >
>> >
>> >
>> >
>> > --
>> > Abraços,
>> > Gabriel Augusto
>> > 013 97940055
>> >
>> > --
>> >
>> >
>>
>> --
>>
>>
>
>
>
> --
> Abraços,
> Gabriel Augusto
> 013 97940055
>
> --
>
>

--





--
 
Att,
Derci Santos
Skype: dercilima
Fones: (34) 8434 - 7699 (Claro - MG)
           (64) 3612 - 2628 (Fixo OI - GO)
           (64) 9238 - 2325 (Claro - GO)
           (64) 8158 - 9137 (Tim - GO)


Recomendação se for reenviar esta mensagem, por favor:

1. Apague o MEU endereço eletrônico e todos os outros constantes do e-mail;
2. Encaminhe como CÓPIA OCULTA (Cco ou Bcc) aos seus destinatários.
3. Agindo desta forma, você estará colaborando para dificultar a disseminação de vírus e spams, e também para tornar a internet mais segura.




--
 
Att,
Derci Santos
Skype: dercilima
Fones: (34) 8434 - 7699 (Claro - MG)
           (64) 3612 - 2628 (Fixo OI - GO)
           (64) 9238 - 2325 (Claro - GO)
           (64) 8158 - 9137 (Tim - GO)


Recomendação se for reenviar esta mensagem, por favor:

1. Apague o MEU endereço eletrônico e todos os outros constantes do e-mail;
2. Encaminhe como CÓPIA OCULTA (Cco ou Bcc) aos seus destinatários.
3. Agindo desta forma, você estará colaborando para dificultar a disseminação de vírus e spams, e também para tornar a internet mais segura.

--
 
 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Re: [androidbrasil-dev] Problemas para Ativar e Desativar o GPS

Olha gente,


Já imaginei que não teria uma forma "correta" de se fazer esse procedimento funcionar em todas as versões do Android. Para tentar resolver isso, fiz da seguinte forma:

Quando ligar o device, eu tenho um BroadcastReceiver que executa assim que o termina o boot, ele verifica se o GPS está ativo, caso não esteja emite uma notificação solicitando que o usuário habilite o GPS.
Quando o usuário clica nessa notificação, eu envio uma intent ao sistema operacional solicitando a abertura da tela de configuração onde habilita o GPS: Intent i = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
A notificação só é cancelada quando o usuário habilitar o GPS.

Agradeço a atenção e ajuda de todos.

Caso alguém teve alguma dúvida de como eu fiz, basta pedir que envio os fontes e explico.

Abraços.


Em 31 de outubro de 2012 16:07, luciofm <luciofm@gmail.com> escreveu:
Por isso que eu implementaria um relatório sobre os usuários que não
seguem as normas da empresa...



Lúcio Maciel
luciofm@gmail.com


2012/10/31 Gabriel Augusto <gabrielaugustodm@gmail.com>:
> Com certeza a melhor maneira é levar o usuario, Lucio.
>
> O problema é que deixar essa decisão na mão do usuario final do app
> (geralmente funcionarios que não tem intenção de contribuir com o serviço
> que, geralmente, visa controla-los de alguma maneira) pode acabar tornando o
> app desinteressante para o gestor dos funcionarios.
>
> Em 31 de outubro de 2012 15:02, luciofm <luciofm@gmail.com> escreveu:
>
>> Acho que a melhor maneira é sempre que detectar que o GPS está
>> desligado, pedir para o usuário liga-lo e abrir a tela de configuração
>> de localização para ele, pelo menos essa é a maneira mais portavel
>> para se fazer...
>>
>>
>> Lúcio Maciel
>> luciofm@gmail.com
>>
>>
>> 2012/10/31 Gabriel Augusto <gabrielaugustodm@gmail.com>:
>> > Também necessito disso na minha app e utilizo a primeira forma pois os
>> > devices são 2.2 e 2.3. Porém, se houvesse outra forma, também gostaria
>> > de
>> > saber, é uma restrição a menos na app.
>> >
>> > Abraço,
>> > Gabriel Augusto
>> >
>> > Em 31 de outubro de 2012 10:52, Derci Santos <derciii.lima@gmail.com>
>> > escreveu:
>> >
>> >> Bom dia galera,
>> >>
>> >> Estou desenvolvendo uma app onde me foi solicitado que o GPS seja
>> >> ativado
>> >> automaticamente ao ligar o device. Já descobri como faço para executar
>> >> algo
>> >> quando o device é iniciado, porém estou tendo um problema para ativar o
>> >> GPS.
>> >> Já vi que oficialmente não é correto ligar o GPS de forma automática,
>> >> porém
>> >> encontrei algumas formas alternativas de fazer tal procedimento.
>> >>
>> >> A primeira delas é a seguinte:
>> >>
>> >> Intent i = new Intent();
>> >> i.setClassName("com.android.settings",
>> >> "com.android.settings.widget.SettingsAppWidgetProvider");
>> >> i.addCategory(Intent.CATEGORY_ALTERNATIVE);
>> >> i.setData(Uri.parse("custom:3"));
>> >>
>> >> sendBroadcast(i);
>> >>
>> >> Crio uma intent e a envio em forma de broadcast ao sistema operaciona.
>> >> Essa forma só funcionou em versões anteriores a versão 3.0 do Android.
>> >> Da
>> >> 3.0 acima não funciona.
>> >>
>> >> A segunda forma que encontrei de fazer isso foi a seguinte:
>> >>
>> >> Intent i = new Intent("android.location.GPS_ENABLED_CHANGE");
>> >> i.putExtra("enabled", ligar);
>> >> sendBroadcast(i);
>> >>
>> >> Também crio uma intent e a envio para o sistema operacional. Essa só
>> >> fez
>> >> com que o icone de buscando do GPS ficasse piscando na barra de
>> >> notificação.
>> >> Mas em todos os lugares que olho o GPS está desabilitado.
>> >>
>> >>
>> >> Alguém tem alguma ideia de como posso proceder pra fazer tal rotina.
>> >> Lembrando que estou ciente que não é a forma correta de se fazer, mas
>> >> não
>> >> queria que fosse preciso abrir a tela de preferencias do android para
>> >> habilitar ou desabilitar o GPS.
>> >>
>> >> Desde já agradeço a atenção de todos.
>> >>
>> >> --
>> >>
>> >> Att,
>> >> Derci Santos
>> >> Skype: dercilima
>> >> about.me/dercilima
>> >>
>> >> Recomendação se for reenviar esta mensagem, por favor:
>> >>
>> >> 1. Apague o MEU endereço eletrônico e todos os outros constantes do
>> >> e-mail;
>> >> 2. Encaminhe como CÓPIA OCULTA (Cco ou Bcc) aos seus destinatários.
>> >> 3. Agindo desta forma, você estará colaborando para dificultar a
>> >> disseminação de vírus e spams, e também para tornar a internet mais
>> >> segura.
>> >>
>> >> --
>> >>
>> >>
>> >
>> >
>> >
>> >
>> > --
>> > Abraços,
>> > Gabriel Augusto
>> > 013 97940055
>> >
>> > --
>> >
>> >
>>
>> --
>>
>>
>
>
>
> --
> Abraços,
> Gabriel Augusto
> 013 97940055
>
> --
>
>

--





--
 
Att,
Derci Santos
Skype: dercilima
Fones: (34) 8434 - 7699 (Claro - MG)
           (64) 3612 - 2628 (Fixo OI - GO)
           (64) 9238 - 2325 (Claro - GO)
           (64) 8158 - 9137 (Tim - GO)


Recomendação se for reenviar esta mensagem, por favor:

1. Apague o MEU endereço eletrônico e todos os outros constantes do e-mail;
2. Encaminhe como CÓPIA OCULTA (Cco ou Bcc) aos seus destinatários.
3. Agindo desta forma, você estará colaborando para dificultar a disseminação de vírus e spams, e também para tornar a internet mais segura.

--
 
 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Re: [androidbrasil-dev] Problemas para Ativar e Desativar o GPS

Por isso que eu implementaria um relatório sobre os usuários que não
seguem as normas da empresa...



Lúcio Maciel
luciofm@gmail.com


2012/10/31 Gabriel Augusto <gabrielaugustodm@gmail.com>:
> Com certeza a melhor maneira é levar o usuario, Lucio.
>
> O problema é que deixar essa decisão na mão do usuario final do app
> (geralmente funcionarios que não tem intenção de contribuir com o serviço
> que, geralmente, visa controla-los de alguma maneira) pode acabar tornando o
> app desinteressante para o gestor dos funcionarios.
>
> Em 31 de outubro de 2012 15:02, luciofm <luciofm@gmail.com> escreveu:
>
>> Acho que a melhor maneira é sempre que detectar que o GPS está
>> desligado, pedir para o usuário liga-lo e abrir a tela de configuração
>> de localização para ele, pelo menos essa é a maneira mais portavel
>> para se fazer...
>>
>>
>> Lúcio Maciel
>> luciofm@gmail.com
>>
>>
>> 2012/10/31 Gabriel Augusto <gabrielaugustodm@gmail.com>:
>> > Também necessito disso na minha app e utilizo a primeira forma pois os
>> > devices são 2.2 e 2.3. Porém, se houvesse outra forma, também gostaria
>> > de
>> > saber, é uma restrição a menos na app.
>> >
>> > Abraço,
>> > Gabriel Augusto
>> >
>> > Em 31 de outubro de 2012 10:52, Derci Santos <derciii.lima@gmail.com>
>> > escreveu:
>> >
>> >> Bom dia galera,
>> >>
>> >> Estou desenvolvendo uma app onde me foi solicitado que o GPS seja
>> >> ativado
>> >> automaticamente ao ligar o device. Já descobri como faço para executar
>> >> algo
>> >> quando o device é iniciado, porém estou tendo um problema para ativar o
>> >> GPS.
>> >> Já vi que oficialmente não é correto ligar o GPS de forma automática,
>> >> porém
>> >> encontrei algumas formas alternativas de fazer tal procedimento.
>> >>
>> >> A primeira delas é a seguinte:
>> >>
>> >> Intent i = new Intent();
>> >> i.setClassName("com.android.settings",
>> >> "com.android.settings.widget.SettingsAppWidgetProvider");
>> >> i.addCategory(Intent.CATEGORY_ALTERNATIVE);
>> >> i.setData(Uri.parse("custom:3"));
>> >>
>> >> sendBroadcast(i);
>> >>
>> >> Crio uma intent e a envio em forma de broadcast ao sistema operaciona.
>> >> Essa forma só funcionou em versões anteriores a versão 3.0 do Android.
>> >> Da
>> >> 3.0 acima não funciona.
>> >>
>> >> A segunda forma que encontrei de fazer isso foi a seguinte:
>> >>
>> >> Intent i = new Intent("android.location.GPS_ENABLED_CHANGE");
>> >> i.putExtra("enabled", ligar);
>> >> sendBroadcast(i);
>> >>
>> >> Também crio uma intent e a envio para o sistema operacional. Essa só
>> >> fez
>> >> com que o icone de buscando do GPS ficasse piscando na barra de
>> >> notificação.
>> >> Mas em todos os lugares que olho o GPS está desabilitado.
>> >>
>> >>
>> >> Alguém tem alguma ideia de como posso proceder pra fazer tal rotina.
>> >> Lembrando que estou ciente que não é a forma correta de se fazer, mas
>> >> não
>> >> queria que fosse preciso abrir a tela de preferencias do android para
>> >> habilitar ou desabilitar o GPS.
>> >>
>> >> Desde já agradeço a atenção de todos.
>> >>
>> >> --
>> >>
>> >> Att,
>> >> Derci Santos
>> >> Skype: dercilima
>> >> about.me/dercilima
>> >>
>> >> Recomendação se for reenviar esta mensagem, por favor:
>> >>
>> >> 1. Apague o MEU endereço eletrônico e todos os outros constantes do
>> >> e-mail;
>> >> 2. Encaminhe como CÓPIA OCULTA (Cco ou Bcc) aos seus destinatários.
>> >> 3. Agindo desta forma, você estará colaborando para dificultar a
>> >> disseminação de vírus e spams, e também para tornar a internet mais
>> >> segura.
>> >>
>> >> --
>> >>
>> >>
>> >
>> >
>> >
>> >
>> > --
>> > Abraços,
>> > Gabriel Augusto
>> > 013 97940055
>> >
>> > --
>> >
>> >
>>
>> --
>>
>>
>
>
>
> --
> Abraços,
> Gabriel Augusto
> 013 97940055
>
> --
>
>

--

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

[androidbrasil-dev] Re: Atualizar APP

Eu consegui resolver usando essa implantação...

... no if(dbExist)

fica a informação pra quem cair de para-quedas nesse tópico kkkk

Diogo Henrique
(83)87344178
Rede Sociais: 
Meditando Provérbios: 





2012/10/29 Diogo Henrique <diogjp10@gmail.com>
Olá pessoal, preciso da ajuda de vocês... tenho um APP que fiz a criação da base de dados dele, usei o expert para criar as tabelas e os dados, e uso essa base de dados fixa. Dai surgiu a necessidade de atualizar a base de dados e criar uma nova tabela, eu não tenho acesso ao Play porque eu só fiz desenvolver o APP para o cara. Se eu mandar o novo APK para ele com essa nova base de dados serve para esse meu caso ? 
Minha classe do DB e essa que está abaixo... ela pega um arquivo .db que está na pasta assets e inclui no projeto, eu uso ela apenas no SplashScreen e para fazer um insert no banco, depois só os DAO usam ela.

public class DataBaseHelper extends SQLiteOpenHelper {

//The Android's default system path of your application database.
    private static String DB_PATH = "/data/data/br.com.android.noweight/databases/";
    private static String DB_NAME = "reeduc_base.db";
    private SQLiteDatabase myDataBase; 
    private static String myPa = DB_PATH + DB_NAME;
    private final Context myContext;
   
    public DataBaseHelper(Context context) {
 
    super(context, DB_NAME, null, 1);
        this.myContext = context;
    }

  
    public void createDataBase() throws IOException{
    Log.i("teste","entrou no metodo createDatabase");
    boolean dbExist = checkDataBase();
   
    if(dbExist){
    //do nothing - database already exist
    }else{    
    //By calling this method and empty database will be created into the default system path
               //of your application so we are gonna be able to overwrite that database with our database.
        this.getReadableDatabase();
 
        try {
    copyDataBase();
 
    } catch (IOException e) {
        throw new Error("Error copying database");
 
        }
    }
 
    }
    
   
    private boolean checkDataBase(){
    SQLiteDatabase checkDB = null;
 
    try{
    //checkDB.execSQL("PRAGMA foreign_keys=ON;");
    String myPath = DB_PATH + DB_NAME;
    checkDB = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READONLY);
    }catch(SQLiteException e){
    //database does't exist yet.
 
    }
 
    if(checkDB != null){
    checkDB.close();
 
    }
    return checkDB != null ? true : false;
    }
    
   
    private void copyDataBase() throws IOException{
    //Open your local db as the input stream
    InputStream myInput = myContext.getAssets().open(DB_NAME);
 
    // Path to the just created empty db
    String outFileName = DB_PATH + DB_NAME;
 
    //Open the empty db as the output stream
    OutputStream myOutput = new FileOutputStream(outFileName);
    //transfer bytes from the inputfile to the outputfile
    byte[] buffer = new byte[1024];
    int length;
    while ((length = myInput.read(buffer))>0){
    myOutput.write(buffer, 0, length);
    }
 
    //Close the streams
    myOutput.flush();
    myOutput.close();
    myInput.close();
 
    }
    
    public void openDataBase() throws SQLException{
    //Open the database
        String myPath = DB_PATH + DB_NAME;
    myDataBase = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READONLY);
    }
    
    @Override
public synchronized void close() {
 
       if(myDataBase != null)
       myDataBase.close();
 
       super.close();
 
}
 
@Override
public void onCreate(SQLiteDatabase db) {
 
}
 
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
          
}
     
public boolean insert(String nome_tabela,ContentValues ctv){
myDataBase = SQLiteDatabase.openDatabase(myPa, null, SQLiteDatabase.OPEN_READWRITE);
if((myDataBase.insert(nome_tabela, null, ctv) > 0)){
myDataBase.close();
return true;
}
else{
return false;
}
}





Diogo Henrique
(83)87344178
Rede Sociais: 
Meditando Provérbios: 




--
 
 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Re: [androidbrasil-dev] Problemas para Ativar e Desativar o GPS

Com certeza a melhor maneira é levar o usuario, Lucio.


O problema é que deixar essa decisão na mão do usuario final do app (geralmente funcionarios que não tem intenção de contribuir com o serviço que, geralmente, visa controla-los de alguma maneira) pode acabar tornando o app desinteressante para o gestor dos funcionarios.

Em 31 de outubro de 2012 15:02, luciofm <luciofm@gmail.com> escreveu:
Acho que a melhor maneira é sempre que detectar que o GPS está
desligado, pedir para o usuário liga-lo e abrir a tela de configuração
de localização para ele, pelo menos essa é a maneira mais portavel
para se fazer...


Lúcio Maciel
luciofm@gmail.com


2012/10/31 Gabriel Augusto <gabrielaugustodm@gmail.com>:
> Também necessito disso na minha app e utilizo a primeira forma pois os
> devices são 2.2 e 2.3. Porém, se houvesse outra forma, também gostaria de
> saber, é uma restrição a menos na app.
>
> Abraço,
> Gabriel Augusto
>
> Em 31 de outubro de 2012 10:52, Derci Santos <derciii.lima@gmail.com>
> escreveu:
>
>> Bom dia galera,
>>
>> Estou desenvolvendo uma app onde me foi solicitado que o GPS seja ativado
>> automaticamente ao ligar o device. Já descobri como faço para executar algo
>> quando o device é iniciado, porém estou tendo um problema para ativar o GPS.
>> Já vi que oficialmente não é correto ligar o GPS de forma automática, porém
>> encontrei algumas formas alternativas de fazer tal procedimento.
>>
>> A primeira delas é a seguinte:
>>
>> Intent i = new Intent();
>> i.setClassName("com.android.settings",
>> "com.android.settings.widget.SettingsAppWidgetProvider");
>> i.addCategory(Intent.CATEGORY_ALTERNATIVE);
>> i.setData(Uri.parse("custom:3"));
>>
>> sendBroadcast(i);
>>
>> Crio uma intent e a envio em forma de broadcast ao sistema operaciona.
>> Essa forma só funcionou em versões anteriores a versão 3.0 do Android. Da
>> 3.0 acima não funciona.
>>
>> A segunda forma que encontrei de fazer isso foi a seguinte:
>>
>> Intent i = new Intent("android.location.GPS_ENABLED_CHANGE");
>> i.putExtra("enabled", ligar);
>> sendBroadcast(i);
>>
>> Também crio uma intent e a envio para o sistema operacional. Essa só fez
>> com que o icone de buscando do GPS ficasse piscando na barra de notificação.
>> Mas em todos os lugares que olho o GPS está desabilitado.
>>
>>
>> Alguém tem alguma ideia de como posso proceder pra fazer tal rotina.
>> Lembrando que estou ciente que não é a forma correta de se fazer, mas não
>> queria que fosse preciso abrir a tela de preferencias do android para
>> habilitar ou desabilitar o GPS.
>>
>> Desde já agradeço a atenção de todos.
>>
>> --
>>
>> Att,
>> Derci Santos
>> Skype: dercilima
>> about.me/dercilima
>>
>> Recomendação se for reenviar esta mensagem, por favor:
>>
>> 1. Apague o MEU endereço eletrônico e todos os outros constantes do
>> e-mail;
>> 2. Encaminhe como CÓPIA OCULTA (Cco ou Bcc) aos seus destinatários.
>> 3. Agindo desta forma, você estará colaborando para dificultar a
>> disseminação de vírus e spams, e também para tornar a internet mais segura.
>>
>> --
>>
>>
>
>
>
>
> --
> Abraços,
> Gabriel Augusto
> 013 97940055
>
> --
>
>

--





--
Abraços,
Gabriel Augusto
013 97940055

--
 
 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Re: [androidbrasil-dev] Forçar interrupção / AlarmManager

Com relação a erros, o pessoal aqui fez uma implementação pra envio de log de erros.

--
Abraços,
Pedro Subutzki
__________________________________________

HADI - Makes SQLite in Android easy and simple
https://github.com/PepeuCps/Hadi

Em 31 de outubro de 2012 15:55, Gabriel Augusto <gabrielaugustodm@gmail.com> escreveu:
Ele baixa o apk mas precisa clicar no botão e confirmar a instalação e no update, precisa passar pelo mesmo processo, certo??

Sempre procurei pela atualização/instalação parecida com a do Google Play, sem a necessidade do usuario aceitar..

Hoje já estamos com muitos devices também, sei como é complicado oferecer o suporte, rs

Quanto a erros e relatorios, vc utiliza algo? Comecei a poucos meses a utilizar o BugSense e estamos testando com alguns aparelhos aqui.

Abraço,
Gabriel Augusto

Em 31 de outubro de 2012 15:19, Pedro Subutzki <Pepeu> <falecompepeu@gmail.com> escreveu:

A instalação é feita pelo navegador mesmo... o sujeito vai lá e digita uma URL encurtada do nosso servidor e baixa a aplicação.
Apartir daí, todos os updates e toda a comunicação é direta com o nosso server.

Não sei a quatidade de devices de vocês, mas a nossa aqui é grande e espalhada por diversas empresas no Brasil todo.


--
Abraços,
Pedro Subutzki
__________________________________________
HADI - Makes SQLite in Android easy and simple
https://github.com/PepeuCps/Hadi


Em 31 de outubro de 2012 15:15, Gabriel Augusto <gabrielaugustodm@gmail.com> escreveu:
Pois é Pedro. Quando comecei a implementar e descobri que era necessario uma conta do Google, fiquei preocupado... Infelizmente não tivemos como fugir do GCM aqui e quando o device não possui uma conta, nós mesmos cadastramos uma conta do Google padrão para todos os devices.

Método de auto-update encontrei a um tempo com a ajuda do grupo mesmo. Instalação, como você faz?

Abraço,
Gabriel Augusto

Em 31 de outubro de 2012 14:46, Pedro Subutzki <Pepeu> <falecompepeu@gmail.com> escreveu:

Só salientando que na maioria dos casos de apps de negocio, não há nenhuma conta do Google associado ao device.
Aqui nós fazemos tudo "por fora" do  Google, desde a instalação até o auto-update das aplicações.

--
Abraços,
Pedro Subutzki
__________________________________________
HADI - Makes SQLite in Android easy and simple
https://github.com/PepeuCps/Hadi


Em 31 de outubro de 2012 10:17, luciofm <luciofm@gmail.com> escreveu:
Utilizando GCM apenas o serviço do Google tem que estar rodando...


O seu aplicativo é inicializado pelo GCM para tratar o PUSH.

Se os funcionarios matam até esse serviço, você tem um problema com os
funcionários, e não com o sistema...

Lúcio Maciel
luciofm@gmail.com


2012/10/31 Psy Khé <psykhe6@gmail.com>:
> Lucio,
>
> De qualquer forma vai ter que ter algum serviço em execução...?
>
> Por isso se for apenas um service e ele força a parada do serviço, não será
> eficiente essa consulta no server.
>
> A ideia de ter mais de um serviço "zumbis" e apenas um com a feature de
> realização do serviço propriamente dito, acho que é valida.
>
> Pois se ele parar um serviço...Um dos outros dois, vai reinicia-lo.
>
> Hum...
>
> I dont know!!
>
> Ou talvez nao entendi bem...
>
> Abs a comu!
>
> Att.
>
> Psy Khé.
>
> Em 31 de outubro de 2012 09:53, luciofm <luciofm@gmail.com> escreveu:
>>
>> Você pode fazer esse controle do lado servidor...
>>
>> A cada execução do seu serviço você pode notificar seu servidor...
>>
>> No lado servidor, se ele perceber que existe algum usuário que não fez
>> um check-in nos últimos X minutos/horas, você envia um PUSH para ele,
>> e no tratamento do PUSH você re-inicia o seu service...
>>
>> Depois mando a nota fiscal do serviço...
>> Lúcio Maciel
>> luciofm@gmail.com
>>
>>
>> 2012/10/30 Gabriel Augusto <gabrielaugustodm@gmail.com>:
>> > É, essa solução do "virus" foi cogitada cara..
>> >
>> > Obrigado pela dica!
>> >
>> > Em 30 de outubro de 2012 21:29, Psy Khé <psykhe6@gmail.com> escreveu:
>> >
>> >> É iria indicar somente o uso de um unico service,
>> >>
>> >> Mas com meu pouco uso de Android, vejo que pode ser também parado no
>> >> menu
>> >> aplicativos/execução...
>> >>
>> >> Então, não vejo uma solução simples,
>> >>
>> >> Uma rom customizada seria possivel e bem hard.
>> >>
>> >> Fora isso...
>> >>
>> >> Talvez fazer um esquema de "virus" já que é algo empresarial,
>> >>
>> >> Com três serviços rodando simultaneamente, e apenas um fazendo a
>> >> feature
>> >> completa,
>> >>
>> >> Porem ambos verificam a existencia deles ativos...se algum deles for
>> >> encerrado, um dos dois ira executa-lo novamente.
>> >>
>> >> Algo do genero, rs...
>> >>
>> >> Não sei até quando vai ser eficaz, mas um estudo do genero pode ser
>> >> possivel.
>> >>
>> >> Não sei se tera uma solução pratica para inviabilizar alguem de parar a
>> >> execução no menu citado.
>> >>
>> >> Vlw,
>> >>
>> >> Abs,
>> >>
>> >> Psy Khé.
>> >>
>> >> Em 30 de outubro de 2012 16:06, Gabriel Augusto
>> >> <gabrielaugustodm@gmail.com> escreveu:
>> >>>
>> >>> Vi nesse link que o AlarmManager funciona independente do Force close,
>> >>> pelo PendingIntent. Porém não esta acontecendo assim..
>> >>>
>> >>> Segue meu Alarm
>> >>>
>> >>> public void agendarPing() {
>> >>> Intent it = new Intent("EXECUTA");
>> >>> PendingIntent p = PendingIntent.getBroadcast(LocatorService.this, 0,
>> >>> it,
>> >>> 0);
>> >>> Calendar c = Calendar.getInstance();
>> >>> c.setTimeInMillis(System.currentTimeMillis());
>> >>> c.add(Calendar.SECOND, 360);
>> >>> long tempoReabrir = c.getTimeInMillis();
>> >>> AlarmManager reabrir = (AlarmManager) getSystemService(ALARM_SERVICE);
>> >>> reabrir.set(AlarmManager.RTC_WAKEUP, tempoReabrir, p);
>> >>> Log.d(TAG, "Alarme agendado com sucesso!");
>> >>> }
>> >>>
>> >>> Em 30 de outubro de 2012 16:03, Gabriel Augusto
>> >>> <gabrielaugustodm@gmail.com> escreveu:
>> >>>
>> >>>> Meu app não é distribuido no market. É voltado para emrpesas que
>> >>>> buscam
>> >>>> ter o controle dos aparelhos de seus funcionarios..
>> >>>>
>> >>>>
>> >>>>
>> >>>> Em 30 de outubro de 2012 15:36, Lucas Xavier <lucasxas@gmail.com>
>> >>>> escreveu:
>> >>>>
>> >>>>> Acho que seria mais interessante procurar saber em quais
>> >>>>> circunstâncias
>> >>>>> seus usuários estão forçando a interrupção do app.
>> >>>>> --
>> >>>>> Atenciosamente,
>> >>>>>
>> >>>>> Lucas Xavier
>> >>>>>
>> >>>>>
>> >>>>> Em 30 de outubro de 2012 14:23, Otávio Massard Mendes
>> >>>>> <otaviommendes@gmail.com> escreveu:
>> >>>>>
>> >>>>>> Se o usuário DESEJA essa interrupção... seria legal ignorá-la?
>> >>>>>>
>> >>>>>> On 30/10/2012, at 15:22, Gabriel Augusto
>> >>>>>> <gabrielaugustodm@gmail.com>
>> >>>>>> wrote:
>> >>>>>>
>> >>>>>> Boa tarde,
>> >>>>>>
>> >>>>>> Utilizo AlarmManager para re-abrir meu Service de tanto em tanto
>> >>>>>> tempo.Porém, se o usuario for até o gerenciador de aplicativos e
>> >>>>>> Forçar
>> >>>>>> interrupção do app, o alarme automaticamente é cancelado.
>> >>>>>>
>> >>>>>> Existe algum modo de ignorar esse 'Forçar interrupção' e iniciar
>> >>>>>> mesmo
>> >>>>>> assim o Service?
>> >>>>>>
>> >>>>>> Procurei também por bloquear o botão mas nada funcionou..
>> >>>>>>
>> >>>>>> Muito obrigado desde já!
>> >>>>>>
>> >>>>>> --
>> >>>>>> Abraços,
>> >>>>>> Gabriel Augusto
>> >>>>>> 013 97940055
>> >>>>>>
>> >>>>>>
>> >>>>>> --
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>> --
>> >>>>>>
>> >>>>>>
>> >>>>>
>> >>>>>
>> >>>>> --
>> >>>>>
>> >>>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>> --
>> >>>> Abraços,
>> >>>> Gabriel Augusto
>> >>>> 013 97940055
>> >>>>
>> >>>
>> >>>
>> >>>
>> >>> --
>> >>> Abraços,
>> >>> Gabriel Augusto
>> >>> 013 97940055
>> >>>
>> >>> --
>> >>>
>> >>>
>> >>
>> >>
>> >> --
>> >>
>> >>
>> >
>> >
>> >
>> >
>> > --
>> > Abraços,
>> > Gabriel Augusto
>> > 013 97940055
>> >
>> > --
>> >
>> >
>>
>> --
>>
>>
>
> --
>
>

--






--
 
 



--
Abraços,
Gabriel Augusto

--
 
 




--
 
 



--
Abraços,
Gabriel Augusto
013 97940055

--
 
 




--
 
 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Re: [androidbrasil-dev] Forçar interrupção / AlarmManager

Ele baixa o apk mas precisa clicar no botão e confirmar a instalação e no update, precisa passar pelo mesmo processo, certo??


Sempre procurei pela atualização/instalação parecida com a do Google Play, sem a necessidade do usuario aceitar..

Hoje já estamos com muitos devices também, sei como é complicado oferecer o suporte, rs

Quanto a erros e relatorios, vc utiliza algo? Comecei a poucos meses a utilizar o BugSense e estamos testando com alguns aparelhos aqui.

Abraço,
Gabriel Augusto

Em 31 de outubro de 2012 15:19, Pedro Subutzki <Pepeu> <falecompepeu@gmail.com> escreveu:
A instalação é feita pelo navegador mesmo... o sujeito vai lá e digita uma URL encurtada do nosso servidor e baixa a aplicação.
Apartir daí, todos os updates e toda a comunicação é direta com o nosso server.

Não sei a quatidade de devices de vocês, mas a nossa aqui é grande e espalhada por diversas empresas no Brasil todo.


--
Abraços,
Pedro Subutzki
__________________________________________
HADI - Makes SQLite in Android easy and simple
https://github.com/PepeuCps/Hadi


Em 31 de outubro de 2012 15:15, Gabriel Augusto <gabrielaugustodm@gmail.com> escreveu:
Pois é Pedro. Quando comecei a implementar e descobri que era necessario uma conta do Google, fiquei preocupado... Infelizmente não tivemos como fugir do GCM aqui e quando o device não possui uma conta, nós mesmos cadastramos uma conta do Google padrão para todos os devices.

Método de auto-update encontrei a um tempo com a ajuda do grupo mesmo. Instalação, como você faz?

Abraço,
Gabriel Augusto

Em 31 de outubro de 2012 14:46, Pedro Subutzki <Pepeu> <falecompepeu@gmail.com> escreveu:

Só salientando que na maioria dos casos de apps de negocio, não há nenhuma conta do Google associado ao device.
Aqui nós fazemos tudo "por fora" do  Google, desde a instalação até o auto-update das aplicações.

--
Abraços,
Pedro Subutzki
__________________________________________
HADI - Makes SQLite in Android easy and simple
https://github.com/PepeuCps/Hadi


Em 31 de outubro de 2012 10:17, luciofm <luciofm@gmail.com> escreveu:
Utilizando GCM apenas o serviço do Google tem que estar rodando...


O seu aplicativo é inicializado pelo GCM para tratar o PUSH.

Se os funcionarios matam até esse serviço, você tem um problema com os
funcionários, e não com o sistema...

Lúcio Maciel
luciofm@gmail.com


2012/10/31 Psy Khé <psykhe6@gmail.com>:
> Lucio,
>
> De qualquer forma vai ter que ter algum serviço em execução...?
>
> Por isso se for apenas um service e ele força a parada do serviço, não será
> eficiente essa consulta no server.
>
> A ideia de ter mais de um serviço "zumbis" e apenas um com a feature de
> realização do serviço propriamente dito, acho que é valida.
>
> Pois se ele parar um serviço...Um dos outros dois, vai reinicia-lo.
>
> Hum...
>
> I dont know!!
>
> Ou talvez nao entendi bem...
>
> Abs a comu!
>
> Att.
>
> Psy Khé.
>
> Em 31 de outubro de 2012 09:53, luciofm <luciofm@gmail.com> escreveu:
>>
>> Você pode fazer esse controle do lado servidor...
>>
>> A cada execução do seu serviço você pode notificar seu servidor...
>>
>> No lado servidor, se ele perceber que existe algum usuário que não fez
>> um check-in nos últimos X minutos/horas, você envia um PUSH para ele,
>> e no tratamento do PUSH você re-inicia o seu service...
>>
>> Depois mando a nota fiscal do serviço...
>> Lúcio Maciel
>> luciofm@gmail.com
>>
>>
>> 2012/10/30 Gabriel Augusto <gabrielaugustodm@gmail.com>:
>> > É, essa solução do "virus" foi cogitada cara..
>> >
>> > Obrigado pela dica!
>> >
>> > Em 30 de outubro de 2012 21:29, Psy Khé <psykhe6@gmail.com> escreveu:
>> >
>> >> É iria indicar somente o uso de um unico service,
>> >>
>> >> Mas com meu pouco uso de Android, vejo que pode ser também parado no
>> >> menu
>> >> aplicativos/execução...
>> >>
>> >> Então, não vejo uma solução simples,
>> >>
>> >> Uma rom customizada seria possivel e bem hard.
>> >>
>> >> Fora isso...
>> >>
>> >> Talvez fazer um esquema de "virus" já que é algo empresarial,
>> >>
>> >> Com três serviços rodando simultaneamente, e apenas um fazendo a
>> >> feature
>> >> completa,
>> >>
>> >> Porem ambos verificam a existencia deles ativos...se algum deles for
>> >> encerrado, um dos dois ira executa-lo novamente.
>> >>
>> >> Algo do genero, rs...
>> >>
>> >> Não sei até quando vai ser eficaz, mas um estudo do genero pode ser
>> >> possivel.
>> >>
>> >> Não sei se tera uma solução pratica para inviabilizar alguem de parar a
>> >> execução no menu citado.
>> >>
>> >> Vlw,
>> >>
>> >> Abs,
>> >>
>> >> Psy Khé.
>> >>
>> >> Em 30 de outubro de 2012 16:06, Gabriel Augusto
>> >> <gabrielaugustodm@gmail.com> escreveu:
>> >>>
>> >>> Vi nesse link que o AlarmManager funciona independente do Force close,
>> >>> pelo PendingIntent. Porém não esta acontecendo assim..
>> >>>
>> >>> Segue meu Alarm
>> >>>
>> >>> public void agendarPing() {
>> >>> Intent it = new Intent("EXECUTA");
>> >>> PendingIntent p = PendingIntent.getBroadcast(LocatorService.this, 0,
>> >>> it,
>> >>> 0);
>> >>> Calendar c = Calendar.getInstance();
>> >>> c.setTimeInMillis(System.currentTimeMillis());
>> >>> c.add(Calendar.SECOND, 360);
>> >>> long tempoReabrir = c.getTimeInMillis();
>> >>> AlarmManager reabrir = (AlarmManager) getSystemService(ALARM_SERVICE);
>> >>> reabrir.set(AlarmManager.RTC_WAKEUP, tempoReabrir, p);
>> >>> Log.d(TAG, "Alarme agendado com sucesso!");
>> >>> }
>> >>>
>> >>> Em 30 de outubro de 2012 16:03, Gabriel Augusto
>> >>> <gabrielaugustodm@gmail.com> escreveu:
>> >>>
>> >>>> Meu app não é distribuido no market. É voltado para emrpesas que
>> >>>> buscam
>> >>>> ter o controle dos aparelhos de seus funcionarios..
>> >>>>
>> >>>>
>> >>>>
>> >>>> Em 30 de outubro de 2012 15:36, Lucas Xavier <lucasxas@gmail.com>
>> >>>> escreveu:
>> >>>>
>> >>>>> Acho que seria mais interessante procurar saber em quais
>> >>>>> circunstâncias
>> >>>>> seus usuários estão forçando a interrupção do app.
>> >>>>> --
>> >>>>> Atenciosamente,
>> >>>>>
>> >>>>> Lucas Xavier
>> >>>>>
>> >>>>>
>> >>>>> Em 30 de outubro de 2012 14:23, Otávio Massard Mendes
>> >>>>> <otaviommendes@gmail.com> escreveu:
>> >>>>>
>> >>>>>> Se o usuário DESEJA essa interrupção... seria legal ignorá-la?
>> >>>>>>
>> >>>>>> On 30/10/2012, at 15:22, Gabriel Augusto
>> >>>>>> <gabrielaugustodm@gmail.com>
>> >>>>>> wrote:
>> >>>>>>
>> >>>>>> Boa tarde,
>> >>>>>>
>> >>>>>> Utilizo AlarmManager para re-abrir meu Service de tanto em tanto
>> >>>>>> tempo.Porém, se o usuario for até o gerenciador de aplicativos e
>> >>>>>> Forçar
>> >>>>>> interrupção do app, o alarme automaticamente é cancelado.
>> >>>>>>
>> >>>>>> Existe algum modo de ignorar esse 'Forçar interrupção' e iniciar
>> >>>>>> mesmo
>> >>>>>> assim o Service?
>> >>>>>>
>> >>>>>> Procurei também por bloquear o botão mas nada funcionou..
>> >>>>>>
>> >>>>>> Muito obrigado desde já!
>> >>>>>>
>> >>>>>> --
>> >>>>>> Abraços,
>> >>>>>> Gabriel Augusto
>> >>>>>> 013 97940055
>> >>>>>>
>> >>>>>>
>> >>>>>> --
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>> --
>> >>>>>>
>> >>>>>>
>> >>>>>
>> >>>>>
>> >>>>> --
>> >>>>>
>> >>>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>> --
>> >>>> Abraços,
>> >>>> Gabriel Augusto
>> >>>> 013 97940055
>> >>>>
>> >>>
>> >>>
>> >>>
>> >>> --
>> >>> Abraços,
>> >>> Gabriel Augusto
>> >>> 013 97940055
>> >>>
>> >>> --
>> >>>
>> >>>
>> >>
>> >>
>> >> --
>> >>
>> >>
>> >
>> >
>> >
>> >
>> > --
>> > Abraços,
>> > Gabriel Augusto
>> > 013 97940055
>> >
>> > --
>> >
>> >
>>
>> --
>>
>>
>
> --
>
>

--






--
 
 



--
Abraços,
Gabriel Augusto

--
 
 




--
 
 



--
Abraços,
Gabriel Augusto
013 97940055

--
 
 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Re: [androidbrasil-dev] Off: Novo aplicativo na App Store! (Como assim?? Sai daqui)

Oi pessoal!


Não rola colocar no GitHub pois é um projeto com fins lucrativos. :)

Pensei numa parceria de 50% sobre as vendas da versão Android. Não pretendo eu desenvolver na parte Android. Eu ficaria apenas cuidando do server, que é feito em Pyhton e fica hospedado no Google App Engine, e continuaria evoluindo a versão iOS.

Mas já adianto que o trampo não vai ser fácil. :)

Tenho trabalho somente nas horas vagas (finais de semana e madrugadas) e demorei um ano pra chegar até aqui.

Quem topar tem que encarar como um investimento. Sem remuneração durante o desenvolvimento. Ou seja, é algo de risco.

Sem contar que a gente sabe que a galera Android também é meio mão de vaca, hahaha. Eles vão querer algo free. O que não é problema, já que teríamos diversas outras formas de monetizar em cima do app.

Ainda não temos nada pronto da versão Android. Mas como a versão iOS já está em produção, o trabalho seria mais um "port", como os devidos ajustes de layout.

Outra idéia que eu tive para custear este desenvolvimento seria colocar o projeto em sites como o KickStarter. Aí fica legal, pois quem for desenvolver seria pago pra isso.  Mas pra rolar, o MegabogaCasts já teria que ter uma enorme visibilidade.

Quem quiser continuar este conversa, por favor direcione-a para o email "contato@megabogacasts.com.br" para não poluir a lista aqui.

Abraço!

Eduardo Baião
@eduardobaiao

--
 
 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Re: [androidbrasil-dev] Problemas para Ativar e Desativar o GPS

Também necessito disso na minha app e utilizo a primeira forma pois os devices são 2.2 e 2.3. Porém, se houvesse outra forma, também gostaria de saber, é uma restrição a menos na app.


Abraço,
Gabriel Augusto

Em 31 de outubro de 2012 10:52, Derci Santos <derciii.lima@gmail.com> escreveu:
Bom dia galera,

Estou desenvolvendo uma app onde me foi solicitado que o GPS seja ativado automaticamente ao ligar o device. Já descobri como faço para executar algo quando o device é iniciado, porém estou tendo um problema para ativar o GPS. Já vi que oficialmente não é correto ligar o GPS de forma automática, porém encontrei algumas formas alternativas de fazer tal procedimento.

A primeira delas é a seguinte:

Intent i = new Intent();
i.setClassName("com.android.settings", "com.android.settings.widget.SettingsAppWidgetProvider");
i.addCategory(Intent.CATEGORY_ALTERNATIVE);
i.setData(Uri.parse("custom:3"));

sendBroadcast(i);

Crio uma intent e a envio em forma de broadcast ao sistema operaciona. Essa forma só funcionou em versões anteriores a versão 3.0 do Android. Da 3.0 acima não funciona.

A segunda forma que encontrei de fazer isso foi a seguinte:

Intent i = new Intent("android.location.GPS_ENABLED_CHANGE");
i.putExtra("enabled", ligar);
sendBroadcast(i);

Também crio uma intent e a envio para o sistema operacional. Essa só fez com que o icone de buscando do GPS ficasse piscando na barra de notificação. Mas em todos os lugares que olho o GPS está desabilitado.


Alguém tem alguma ideia de como posso proceder pra fazer tal rotina. Lembrando que estou ciente que não é a forma correta de se fazer, mas não queria que fosse preciso abrir a tela de preferencias do android para habilitar ou desabilitar o GPS.

Desde já agradeço a atenção de todos.

--
 
Att,
Derci Santos
Skype: dercilima

Recomendação se for reenviar esta mensagem, por favor:

1. Apague o MEU endereço eletrônico e todos os outros constantes do e-mail;
2. Encaminhe como CÓPIA OCULTA (Cco ou Bcc) aos seus destinatários.
3. Agindo desta forma, você estará colaborando para dificultar a disseminação de vírus e spams, e também para tornar a internet mais segura.

--
 
 



--
Abraços,
Gabriel Augusto
013 97940055

--
 
 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

Re: [androidbrasil-dev] Off: Novo aplicativo na App Store! (Como assim?? Sai daqui)

Pensaram em colocar o projeto no GitHub?

Assim quem puder ajuda por demanda.


Maicon Strey
Novo Hamburgo - RS - Brasil
------------------
------------------
Linux user: #525086



2012/10/31 Rafael Barrelo <rafaelbarrelo@gmail.com>
Eduardo eu também topo participar desse projeto.

Já tem alguma coisa pronta pra Android ou vai começar do zero?


Abraços,
Rafael Barrelo



Em 31 de outubro de 2012 13:43, Felipe Arimatéia <felipearimateia@gmail.com> escreveu:

Eduardo eu esta te escrevendo o email agora para saber se você estava fazendo para versão Android.
Eu topo a parceria.

Eu instalei o aplicativo no meu iPod quando você lançou e ficou ótimo.


2012/10/31 Eduardo Baião <eduardobaiao@gmail.com>
Oi galera!  Desculpe a brincadeira.

Além do jabá, na verdade gostaria de fazer um convite.

Acabei de lançar um player de podcasts bastante inovador, para iOS, e adivinha o que eu tenho mais ouvido dos usuários?

"Tem pra Android? Tem pra Android?".

Queria saber se alguém se interessaria por uma parceria num possível "port".

Segue o link:

https://itunes.apple.com/br/app/megabogacasts/id521335484?l=pt&ls=1&mt=8

Abraço!

--
 
 



--
-
Paz e Bem
Felipe Arimatéia - Analista de Sistemas Pleno
http://felipearimateia.com/
(34) 91942423  / (33) 88027377

--
 
 

--
 
 

--
 
 

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS