<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pt-br">
		<id>http://wiki.mstech.com.br/index.php?action=history&amp;feed=atom&amp;title=Sincroniza%C3%A7%C3%A3o</id>
		<title>Sincronização - Histórico de revisão</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.mstech.com.br/index.php?action=history&amp;feed=atom&amp;title=Sincroniza%C3%A7%C3%A3o"/>
		<link rel="alternate" type="text/html" href="http://wiki.mstech.com.br/index.php?title=Sincroniza%C3%A7%C3%A3o&amp;action=history"/>
		<updated>2026-05-07T20:33:26Z</updated>
		<subtitle>Histórico de revisões para esta página neste wiki</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>http://wiki.mstech.com.br/index.php?title=Sincroniza%C3%A7%C3%A3o&amp;diff=98&amp;oldid=prev</id>
		<title>Admin: uma edição</title>
		<link rel="alternate" type="text/html" href="http://wiki.mstech.com.br/index.php?title=Sincroniza%C3%A7%C3%A3o&amp;diff=98&amp;oldid=prev"/>
				<updated>2016-05-10T18:22:19Z</updated>
		
		<summary type="html">&lt;p&gt;uma edição&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;tr style='vertical-align: top;' lang='pt-BR'&gt;
				&lt;td colspan='1' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Edição anterior&lt;/td&gt;
				&lt;td colspan='1' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Edição das 18h22min de 10 de maio de 2016&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan='2' style='text-align: center;' lang='pt-BR'&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(Sem diferença)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://wiki.mstech.com.br/index.php?title=Sincroniza%C3%A7%C3%A3o&amp;diff=97&amp;oldid=prev</id>
		<title>Marcia.haga: /* Aplicativo Diário de Classe (tablet) */</title>
		<link rel="alternate" type="text/html" href="http://wiki.mstech.com.br/index.php?title=Sincroniza%C3%A7%C3%A3o&amp;diff=97&amp;oldid=prev"/>
				<updated>2016-02-21T00:17:45Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Aplicativo Diário de Classe (tablet)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nova&lt;/b&gt;&lt;/p&gt;&lt;div&gt;===API=== &lt;br /&gt;
&lt;br /&gt;
Métodos que retornam dados do Gestão (GET) e métodos que gravam dados no Gestão (POST).&lt;br /&gt;
&lt;br /&gt;
Para não sobrecarregar o site, os métodos POST apenas gravam os dados na tabela '''DCL_Protocolo'''. Esses protocolos são processados por um serviço do Gestão configurado para executar de tempo em tempo.&lt;br /&gt;
&lt;br /&gt;
As APIs ficam no projeto ''GestaoEscolar/GestaoAcademica.WebApi'', na pasta ''Controllers''.&lt;br /&gt;
&lt;br /&gt;
===Aplicativo Diário de Classe (tablet)=== &lt;br /&gt;
&lt;br /&gt;
Uma API está inicialmente configurada por perfil de cliente. É possível verificar e alterar a url da API na tela de configuração, logado como administrador (''admin / @1dm.n'').&lt;br /&gt;
&lt;br /&gt;
A sincronização inicial pode ser feita por escola, na tela de configuração, logado como administrador. Ou pode ser feita por um docente no momento do login.&lt;br /&gt;
&lt;br /&gt;
Sempre ao logar o docente também pode escolher a turma que deseja sincronizar, isso agiliza o processo porque sincroniza apenas o necessário.&lt;br /&gt;
&lt;br /&gt;
É possível configurar também, pelo banco do Gestão, a periodicidade para a execução de algumas sincronizações no tablet, mantendo os dados atualizados.&lt;br /&gt;
&lt;br /&gt;
Para cada método de sincronização deve ser criada uma classe de sincronização em ''apk [diarioclasse-apk] &amp;gt; src &amp;gt; br.com.mstech.diarioclasse &amp;gt; '''sync''''' na pasta get ou post. Deve também adicionar as chamadas no arquivo '''''Sync.java''''' e adicionar no enumerador em ''apk [diarioclasse-apk] &amp;gt; src &amp;gt; br.com.mstech.diarioclasse &amp;gt; enumeration &amp;gt; '''ApiEnum.java'''''.&lt;br /&gt;
&lt;br /&gt;
As chamadas ao métodos de sincronização devem ser assíncronas, utilizando uma AssyncTask ou uma Thread.&lt;br /&gt;
Modelo de AssyncTask:&lt;br /&gt;
 private class CarregarAulasTask extends AsyncTask&amp;lt;TIPO_PARAMETRO_ENTRADA, TIPO_PARAMETRO_PROGRESSO, TIPO_PARAMETRO_SAIDA&amp;gt; {&lt;br /&gt;
        @Override&lt;br /&gt;
        protected void onPreExecute() {&lt;br /&gt;
            super.onPreExecute();&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        @Override&lt;br /&gt;
        protected Void doInBackground(TIPO_PARAMETRO_ENTRADA... params) {&lt;br /&gt;
                  TIPO_PARAMETRO_SAIDA​ retorno;&lt;br /&gt;
                  TIPO_PARAMETRO_PROGRESSO​ status;&lt;br /&gt;
                  publishProgress(status);&lt;br /&gt;
            return retorno;&lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        @Override&lt;br /&gt;
        protected void onProgressUpdate(TIPO_PARAMETRO_PROGRESSO... status) {&lt;br /&gt;
        &lt;br /&gt;
        }&lt;br /&gt;
 &lt;br /&gt;
        @Override&lt;br /&gt;
        protected void onPostExecute(Void result) {&lt;br /&gt;
            super.onPostExecute(result);&lt;br /&gt;
        }&lt;br /&gt;
 }&lt;br /&gt;
 new CarregarAulasTask().execute();&lt;br /&gt;
&lt;br /&gt;
Exemplo de Thread com repetição:&lt;br /&gt;
 final Handler handler = new Handler();&lt;br /&gt;
 final Runnable sincronismo = new Runnable() {&lt;br /&gt;
        @Override&lt;br /&gt;
        public void run() {&lt;br /&gt;
            if (NetworkUtil.verificaConexaoInternet(getApplicationContext())) {&lt;br /&gt;
               Sync sync = new Sync(getApplicationContext());&lt;br /&gt;
               ​if (sync.postSincronizarDiarioClasse(common.getEscola().getId())) {&lt;br /&gt;
                  // remove repetição&lt;br /&gt;
                  handler.removeCallbacks(this);&lt;br /&gt;
               ​} else {&lt;br /&gt;
                  handler.postDelayed(this, 5000);&lt;br /&gt;
               }&lt;br /&gt;
            } else {&lt;br /&gt;
               handler.postDelayed(this, 5000);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
 };&lt;br /&gt;
 new Thread(sincronismo).start();&lt;br /&gt;
&lt;br /&gt;
===Serviço===&lt;br /&gt;
&lt;br /&gt;
Pelo site do Gestão é possível configurar a periodicidade de execução dos serviços que processam os protocolos do Diário de Classe.&lt;br /&gt;
&lt;br /&gt;
Um serviço diferente é executado para cada tipo de protocolo.&lt;br /&gt;
&lt;br /&gt;
Os serviços ficam no projeto ''Serviços/MSTech.GestaoEscolar.Jobs'', dentro da solução do Gestão.&lt;br /&gt;
&lt;br /&gt;
Existe também o projeto ''Serviços/Testes'', que pode ser utilizado para testar um protocolo específico ou a execução de um serviço.&lt;/div&gt;</summary>
		<author><name>Marcia.haga</name></author>	</entry>

	</feed>