Cuprins:
- Pasul 1: configurați Do AndroidManifest
- Pasul 2: Entendendo ca clase de serviciu "PavimentoIrregularBackgroundService"
- Pasul 3: Înțelegerea ca clase de serviciu "GeoBackgroundService"
- Pasul 4: Înțelegerea ca clase de serviciu "FirebaseBackgroundService"
- Pasul 5: Entendendo Activity "MapaActivity"
- Pasul 6: Firebase
- Pasul 7: Încheierea proiectului final
Video: Minha Via IOT: 7 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:44
Pós Graduação em Desenvolvimento de Aplicações for devices móveisPUC Contagem
Alunos: Gabriel André e Leandro Reis
Os pavimentos das principales rodovias federais, estaduais e das vias públicas das cidades possuem algum tipo de defeito, causados por vários fatores, o care gera um mare impact nu custo operațional do transport. A partir deste problemă, o prezentă lucru ca obiectiv a prezentare de um aplicativ pentru smartphone cu sistem operațional Android care identifică ca nereguli în pavimentarea dos logradouros das cidades folosind senzorii acceleratorului și GPS. Os tipos de irregularidade mais comum foundados são: remendos em process de afundamento ou remendos com elevação acima do pavimento regular, afundamentos, trincas, ondulações e buracos. Abaixo segue os passos necessários para entendimento da construção da aplicação.
Pasul 1: configurați Do AndroidManifest
No arquivo AndroidManifest.xml este realizat ca configurații necesare permisiune și funcționare a aplicației cu concepte de calcul ubíqua.
-
PermissõesDetalhamos abaixo as permissões do aplicativo e os motivos do uso de cada configuração.
- Permisiunea de localizare Permisul de aplicație pentru a găsi o localizare configuram două etichete, fiind elas:
- Permissão para identificação de Inicialização e Reinicialização do AplicativoPermissão do aplicativo para "escutar" um event de initialização e reinicialização do sistema Android, com obiectiv de inițiere a serviciilor care vor monitoriza a căuta pavimente neregulate, fiind ea:
- Permis de acces la Internet
-
Serviços2.1) Serviço de Pavimento Irregular
Na tag Service that aponta for a class "PavimentoIrregularBackgroundService" tem as target of captar informações dos pavimentos irregulares e armazenar no banco de dados do aparelho smartphone for o aplicativo.
2.2) Serviço de GeoLocalização Na tag service que aponta para a class "GeoBackgroundService" tem as target de tratar as informaçeses de pavimento irregular e busca a sua localização de logradouro, bairro, cidade, unidade federativa pentru agrupar os dados de pavimento irregular por logradouro de uma cidade.
2.3) Serviço de Sincronização de dados com Firebase Na tag service that aponta para a class "FirebaseBackgroundService" tem as target of send as informações de pavimento irregular found hair aparelho de Smartphone, somando com as demais informationções foundadas by other pessoas that utilam o mesmo aplicativo.
-
Configurare API pentru MAPS
Pentru configurarea API-ului de la Hărți, avem nevoie de un registru și o aplicație conformă, conform tutorialului (Configurare API MAPS Android).
A chave obtida deverá ser colocada em "android: value" na tag "meta-data" do 'android: name = "com.google.android.geo. API_KEY"', conform exemplu abaixo:
-
ReceiverReceiver în acest proiect se va asculta ca acțiuni de inițializare și reinicializare a sistemului pentru captar ca informații de paviment irregular.4.1) Receiver de Paviment Irregular
A class "AlarmReceive" is chamada toda vez that has initialization of sistema operational android, conforme configuração da tag "". Após esta chamada, dentro da clase há um agendador para a execução do serviço "PavimentoIrregularBackgroundService" care fica avaliando se há pavimento irregular.
4.2) Receiver de GeoLocalização A class "AlarmGeoReceive" is chamada toda vez that has initialization of system operational android, conforme configuração da tag"
4.3) Receiver of Firebase A class "AlarmFirebaseReceive" is chamada toda vez that has initialization of system operational android, conforme configuração da tag "". Após esta chamada, dentro da clase há um agendador for a execução do serviço "FirebaseBackgroundService" that fica avaliando se há registros com all os dados de logradouro disponivel for envio ao server firebase.
Pasul 2: Entendendo ca clase de serviciu "PavimentoIrregularBackgroundService"
O clasă "PavimentoIrregularBackgroundService" este utilizată pentru a captura informații despre senzorii de accelerare și GPS. Com base nas informações obtidas ele tem um algoritmo specifico no method "onLocationChanged" that avalia se o pavimento is irregular, no qual is inserido em uma tabela de banco de dados da própria aplicação. A classe possui algumas tratatives specificas for identificar se o aparelho está com a bateria low com obiectiv de encerrar o serviço sem care haja prejuízo na coleta das informações e contribuir com o functionamento do aparelho for o usuário. Outras tratative prevê que o encerramento da aplicação, pausa da aplicação, etc.
Pasul 3: Înțelegerea ca clase de serviciu "GeoBackgroundService"
A class "GeoBackgroundService" is responsável by search pavimentação irregular and complementar as informações de endereço from latitude and longitude foundados for that haja o envio dessas informações pelo serviço de Firebase. Practic, ele caută o informație și se completează complementar cu care nu există nici un mod "updateAddress".
Pasul 4: Înțelegerea ca clase de serviciu "FirebaseBackgroundService"
O clasă "FirebaseBackgroundService" este responsabilă cu părul sau cu dosarul de finalizare a pavimentului neregulat pentru serverul Firebase de aplicație.
Após a sincronização das informações, os dados no banco de dados da aplicação é limpado for prover espaço de armazenamento ao aparelho Smartphone. O metodă "enviarPavimentoIrregular" este o principală responsabilitate a sincronizării informațiilor necesare. E pentru a configura o Firebase la proiectul tău pe Android, urmează să urmezi un tutorial pe (Configurând Firebase pentru Android) pentru a vincula la baza sa de informații cu comitetul tău pe Firebase.
Pasul 5: Entendendo Activity "MapaActivity"
MapaActivity este a Principal Activity do sistema, pois ela é responsavel pela exibição dos pavimentos irregulares foundades nas cidades e sua informações é exibida por um mapa de calor, unde a maior ocorrência de pavimento irregular apare em destaque de vermelho no mapa.
Pasul 6: Firebase
No arquivo "minhaviaiot-export.json" exportat de Firebase, continuă cu un exemplu de strategie de două armate care se aplică, conform detalhado abaixo:
Cada logradouro poderá ter mais de um pavimento irregular. Cada Cidade puterea ter mai de um logradouro cu paviment neregulat. E asim por diante até ajunge no country de origem do logradouro problemático.
Pasul 7: Încheierea proiectului final
Anexează acest lucru instructabil urmează totul sau proiectează Android compactat. Com este proiectat este posibil ter uma vizion dos conceptii de calcul ubíqua aplicat em um problemă care nu tem em nenum sistem de tempo real. Com este proiectat este posibil să ajungă în realitate de fiecare oraș și identificare unde deveră este aplicat os investiții pentru um asfalto sau uma corecție de curto termen. Para quaisquer dúvidas e contato segue meu e-mail: [email protected]
Recomandat:
DIY Control RGB LED Color via Bluetooth: 5 pași
DIY Control RGB LED Culoare prin Bluetooth: Becurile inteligente au crescut în popularitate în ultima perioadă și devin în mod constant o parte cheie a setului de instrumente pentru casă inteligentă. Becurile inteligente permit utilizatorului să-și controleze lumina printr-o aplicație specială de pe telefonul inteligent al utilizatorului; becul poate fi aprins
STM32 "Blue Pill" Progmaming Via Arduino IDE & USB: 8 pași
STM32 "Blue Pill" Progmaming prin Arduino IDE și USB: Comparând placa prototip generică STM32F (adică Blue Pill) cu contrapartida sa Arduino este ușor de văzut cu cât mai multe resurse are, ceea ce deschide o mulțime de noi oportunități pentru proiectele IOT. dezavantaje sunt lipsa de sprijin pentru aceasta. De fapt nu chiar eu
Easy IOT - Hub senzor RF controlat de aplicație pentru dispozitive IOT cu rază medie: 4 pași
Easy IOT - Hub senzor RF controlat de aplicație pentru dispozitive IOT cu rază medie: În această serie de tutoriale, vom construi o rețea de dispozitive care pot fi controlate printr-o legătură radio de la un dispozitiv hub central. Avantajul utilizării unei conexiuni radio seriale de 433 MHz în loc de WIFI sau Bluetooth este autonomia mult mai mare (cu
IoT APIS V2 - Sistem autonom de irigare a plantelor activat IoT: 17 pași (cu imagini)
IoT APIS V2 - Sistem autonom de irigare a plantelor activat de IoT: Acest proiect este o evoluție a instrucțiunii mele anterioare: APIS - Sistem automat de irigare a plantelor Utilizez APIS de aproape un an și doream să îmbunătățesc designul anterior monitorizați planta de la distanță. Acesta este modul în care
TUTORIAL DE BAZĂ PRIVIND LIMBAJUL DE MARKUP DE INTELIGENȚĂ ARTIFICIALĂ (AIML) VIA NOTEPAD: 8 pași
TUTORIAL DE BAZĂ PRIVIND LIMBAJUL DE MARKUP DE INTELIGENȚĂ ARTIFICIALĂ (AIML) VIA NOTEPAD: Artificial Intelligence Markup Language (AIML) este un limbaj de programare care este o specificație Extensible Markup Language (XML) utilizată de chatbot, verbot, pandorabot, superbot și alt robot vorbitor. A fost dezvoltat de Dr. Richard Wallace și