Ocean Guard é um aplicativo Android desenvolvido para auxiliar na preservação dos oceanos. O aplicativo permite a identificação de atividades de pesca ilegal, avistamento de espécies em perigo e empoderamento das comunidades costeiras. Utiliza APIs gratuitas e serviços da AWS para fornecer dados em tempo real e promover a conscientização ambiental.
- Autenticação de Usuário: Login seguro através da integração com o Firebase como banco de dados.
- Monitoramento de Pesca Ilegal: Exibe dados sobre atividades de pesca ilegal.
- Relatórios de Avistamentos: Permite aos usuários reportar avistamentos de espécies em perigo.
- Informações das Comunidades Costeiras: Dados sobre as condições das comunidades costeiras e como ajudar.
- Linguagem de Programação: Kotlin
- Plataforma: Android
- APIs Utilizadas:
- Firebase.
- API Global Fishing Watch da Global Fishing Watch para monitorar a atividade de pesca.
- API da Ocean Biogeographic Information System - OBIS, Swagger OBIS e documentação para obter dados sobre espécies marinhas, para identificar ou ajudar na identificação/avistamento de espécies em perigo.
- Serviços da AWS: Utilizados para armazenamento e processamento de dados, como:
- AWS Cognito para autenticação, configuramos um pool de usuários no AWS Cognito.
- S3 para armazenar dados e imagens, criamos um bucket S3 para armazenar imagens e dados de avistamentos.
- Mapbox
- Bibliotecas: Retrofit, Moshi
OceanGuard/
├── app/
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/com/greenconect/oceanguard/
│ │ │ │ ├── model/
│ │ │ │ │ ├── AuthRequest.kt
│ │ │ │ │ ├── AuthResponse.kt
│ │ │ │ │ ├── IllegalFishingData.kt
│ │ │ │ │ └── User.kt
│ │ │ │ ├── network/
│ │ │ │ │ ├── RetrofitClient.kt
│ │ │ │ │ ├── SupabaseApi.kt
│ │ │ │ │ ├── FishingApi.kt
│ │ │ │ │ ├── SupabaseRetrofitClient.kt
│ │ │ │ │ └── FishingRetrofitClient.kt
│ │ │ │ ├── repository/
│ │ │ │ │ ├── UserRepository.kt
│ │ │ │ │ └── FishingRepository.kt
│ │ │ │ ├── ui/
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ └── LoginActivity.kt
│ │ │ │ └── util/
│ │ │ │ └── Extensions.kt
│ │ │ ├── res/
│ │ │ │ ├── layout/
│ │ │ │ │ └── activity_login.xml
│ │ │ │ └── values/
│ │ │ │ ├── strings.xml
│ │ │ │ └── styles.xml
├── README.md
└── build.gradle
Clone o Repositório
$> git clone https://github.com/luciana-pereira/ocean-guard.git
$> cd ocean-guard
Para rodar a aplicação e necessario incluir as chaves da API.
Ex:
const val FISHING_API_URL = "https://api.fishingdata.com"
Esta aplicação foi desenvolvida por:
Flavia |
Luciana Pereira |
Matheus Cavalcante |
Tobias Soares |