Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
uses: actions/checkout@v3

- name: Restore Cache
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: |
~/.gradle/caches
Expand All @@ -40,7 +40,7 @@ jobs:

- name: Upload Test Reports
if: ${{ always() }}
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: test-reports
path: '**/build/reports/tests/'
Expand All @@ -54,7 +54,7 @@ jobs:
uses: actions/checkout@v3

- name: Restore Cache
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: |
~/.gradle/caches
Expand All @@ -79,7 +79,7 @@ jobs:

- name: Upload Lint Reports
if: ${{ always() }}
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: lint-report
path: '**/build/reports/*.*'
10 changes: 5 additions & 5 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,16 @@ jobs:
steps:

- name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3

- name: Set up JDK 17
uses: actions/setup-java@v4
uses: actions/setup-java@v3
with:
distribution: 'adopt'
java-version: '17'

- name: Restore Cache
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: |
~/.gradle/caches
Expand Down Expand Up @@ -51,7 +51,7 @@ jobs:

# https://github.com/actions/upload-artifact
- name: Upload APK
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: apks
path: |
Expand All @@ -73,7 +73,7 @@ jobs:

# https://github.com/marketplace/actions/firebase-app-distribution
- name: Upload to Firebase App Distribution
uses: wzieba/Firebase-Distribution-Github-Action@v1.7.0
uses: wzieba/Firebase-Distribution-Github-Action@v1
with:
appId: ${{ secrets.FIREBASE_APP_ID }}
serviceCredentialsFileContent: ${{ secrets.CREDENTIAL_F_CONTENT }}
Expand Down
12 changes: 11 additions & 1 deletion .idea/kotlinc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

73 changes: 34 additions & 39 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -31,15 +31,14 @@ plugins {

android {
namespace = "al.ahgitdevelopment.municion"
compileSdk 34
buildToolsVersion = '34.0.0'
compileSdk 35

defaultConfig {
applicationId "al.ahgitdevelopment.municion"
minSdkVersion 26
targetSdkVersion 34
versionCode 12
versionName '0.4.2'
targetSdkVersion 35
versionCode 13
versionName '0.5.0'
testInstrumentationRunner "al.ahgitdevelopment.municion.MyTestRunner"

vectorDrawables.useSupportLibrary = true
Expand All @@ -54,15 +53,14 @@ android {
}
}

android {
sourceSets {
String sharedTestDir = 'src/sharedTest/java'
test {
java.srcDirs += sharedTestDir
}
androidTest {
java.srcDirs += sharedTestDir
}

sourceSets {
String sharedTestDir = 'src/sharedTest/java'
test {
java.srcDirs += sharedTestDir
}
androidTest {
java.srcDirs += sharedTestDir
}
}

Expand Down Expand Up @@ -152,20 +150,17 @@ dependencies {
ktlint "com.pinterest:ktlint:0.49.1"

// Google
implementation 'com.google.android.material:material:1.11.0'
implementation "androidx.collection:collection-ktx:1.3.0"
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'androidx.core:core-ktx:1.12.0'
implementation 'androidx.preference:preference-ktx:1.2.1'

implementation "androidx.fragment:fragment-ktx:1.6.2"

implementation "com.google.android.material:material:1.12.0"
implementation "androidx.collection:collection-ktx:1.4.5"
implementation "androidx.constraintlayout:constraintlayout:2.2.1"
implementation "androidx.core:core-ktx:1.15.0"
implementation "androidx.preference:preference-ktx:1.2.1"
implementation "androidx.fragment:fragment-ktx:1.8.6"
// Lifecycle
implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.6.2"
implementation "androidx.lifecycle:lifecycle-runtime-ktx:2.6.2"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.8.7"
implementation "androidx.lifecycle:lifecycle-runtime-ktx:2.8.7"
implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.2"

implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.7"
// Activity KTX for viewModels()
implementation "androidx.activity:activity-ktx:1.8.2"

Expand All @@ -179,31 +174,31 @@ dependencies {
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3"

// Hilt
implementation "com.google.dagger:hilt-android:2.50"
kapt "com.google.dagger:hilt-android-compiler:2.50"
implementation "com.google.dagger:hilt-android:2.55"
kapt "com.google.dagger:hilt-android-compiler:2.55"

// Firebase
implementation platform('com.google.firebase:firebase-bom:32.7.0')
implementation 'com.firebaseui:firebase-ui-auth:8.0.2'
implementation 'com.google.firebase:firebase-analytics-ktx'
implementation 'com.google.firebase:firebase-auth-ktx'
implementation 'com.google.firebase:firebase-crashlytics'
implementation 'com.google.firebase:firebase-database-ktx'
implementation 'com.google.firebase:firebase-firestore-ktx'
implementation 'com.google.firebase:firebase-storage-ktx'
implementation 'com.google.firebase:firebase-analytics-ktx'
implementation "com.firebaseui:firebase-ui-auth:8.0.2"
implementation "com.google.firebase:firebase-analytics-ktx"
implementation "com.google.firebase:firebase-auth-ktx"
implementation "com.google.firebase:firebase-crashlytics"
implementation "com.google.firebase:firebase-database-ktx"
implementation "com.google.firebase:firebase-firestore-ktx"
implementation "com.google.firebase:firebase-storage-ktx"
implementation "com.google.firebase:firebase-analytics-ktx"

// Room components
implementation "androidx.room:room-ktx:2.6.1"
implementation "androidx.room:room-runtime:2.6.1"
kapt "androidx.room:room-compiler:2.6.1"

// Timber
implementation 'com.jakewharton.timber:timber:5.0.1'
implementation "com.jakewharton.timber:timber:5.0.1"

// Glide
implementation 'com.github.bumptech.glide:glide:4.16.0'
kapt 'com.github.bumptech.glide:compiler:4.16.0'
implementation "com.github.bumptech.glide:glide:4.16.0"
kapt "com.github.bumptech.glide:compiler:4.16.0"

}

Expand Down
4 changes: 3 additions & 1 deletion app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
Expand All @@ -19,6 +20,7 @@
android:icon="@mipmap/ic_launcher_3_light"
android:label="@string/app_name"
android:theme="@style/AppTheme"
tools:targetApi="35"
>

<activity
Expand Down
12 changes: 6 additions & 6 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@ buildscript {
}

dependencies {
classpath 'com.android.tools.build:gradle:8.2.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.22"
classpath 'com.android.tools.build:gradle:8.6.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.25"

classpath 'androidx.navigation:navigation-safe-args-gradle-plugin:2.7.6'
classpath 'com.google.dagger:hilt-android-gradle-plugin:2.50'
classpath 'com.google.gms:google-services:4.4.0'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.9'
classpath 'androidx.navigation:navigation-safe-args-gradle-plugin:2.8.8'
classpath 'com.google.dagger:hilt-android-gradle-plugin:2.55'
classpath 'com.google.gms:google-services:4.4.2'
classpath 'com.google.firebase:firebase-crashlytics-gradle:3.0.3'
}
}

Expand Down
43 changes: 43 additions & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
![Android Build](https://github.com/foliolo/Municion/workflows/Android%20Build/badge.svg)
![GitHub release](https://img.shields.io/github/release/foliolo/Municion.svg?maxAge=60)

<img src="https://lh3.googleusercontent.com/2-BKTgB-2F3vaqE51K58ndeDmZ3g4U-03_tP3ho_ozvwst_1s-s-qB7r2BzCj_YNypg" width="175" style="display: block; margin-left: auto; margin-right: auto; width: 50%;">

Weapons manager
===============

Weapons manager is an easy-to-use and dynamic application that will help you maintain control over your weapon,
purchases, competitions and much more.

## Characteristics

* High security to protect all your information through a unique and personal key (even if someone physically access
your phone, they will not be able to read your information if they do not have your password)
* Description of where, how and what price you bought each ammo box to help you with your expenses. You can also rate
the ammunition so that you remember the degree of satisfaction of the purchase made.

## Screenshots

Firebase Signup | Login | Dashboard
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
<img src="https://firebasestorage.googleapis.com/v0/b/municion-95caa.appspot.com/o/TutorialImages%2F01-Firebase_signup.png?alt=media&token=637aca35-06c7-455c-9dda-4d71cb943b7b" width="300"> | <img src="https://firebasestorage.googleapis.com/v0/b/municion-95caa.appspot.com/o/TutorialImages%2F02-Login.png?alt=media&token=a5e78d35-fb26-4df6-b03a-4e84b9fcf390" width="300"> | <img src="https://firebasestorage.googleapis.com/v0/b/municion-95caa.appspot.com/o/TutorialImages%2F03-Dashboard.png?alt=media&token=7304c171-fe35-4d22-8864-55986d4422e7" width="300">

Add License | Add Property Document | Add Purchase
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
<img src="https://firebasestorage.googleapis.com/v0/b/municion-95caa.appspot.com/o/TutorialImages%2F04-Form_license.png?alt=media&token=4ea95f92-7361-407f-b014-46fa4cd95036" width="300" > | <img src="https://firebasestorage.googleapis.com/v0/b/municion-95caa.appspot.com/o/TutorialImages%2F05-Form_property_documents.png?alt=media&token=b4cc9128-1ee6-4c30-bb2b-281616686a3b" width="300"> | <img src="https://firebasestorage.googleapis.com/v0/b/municion-95caa.appspot.com/o/TutorialImages%2F06-Form_purchases.png?alt=media&token=e1ea3cff-4181-4c32-9a3d-117631940ec5" width="300">

Add Competition | Delete elements
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
<img src="https://firebasestorage.googleapis.com/v0/b/municion-95caa.appspot.com/o/TutorialImages%2F07-Form_competitios.png?alt=media&token=66459364-60ce-4667-878d-65472337d539" width="300" > | <img src="https://firebasestorage.googleapis.com/v0/b/municion-95caa.appspot.com/o/TutorialImages%2F08-Delete_elements.png?alt=media&token=982b8a82-d9c0-41a0-a7b1-070cec583ed8" width="300">

## Participants

- Concept Makers: **Antonio David Luque Flores**
- Developer: **Alberto Hidalgo García**
- Designer: **Jorge Gómez Cobacho**

## Other info

To request the deletion of data from the application you can contact us via this email (hgarcia.alberto.gp@gmail.com)
specifying the account you want to be deleted.
The Privacy Policy can be found [here](https://foliolo.github.io/Municion/privacy_policy).
24 changes: 24 additions & 0 deletions docs/privacy_policy.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# AppToLast - Tu Armería
## Política de privacidad
En cumplimiento de lo establecido en la Ley Orgánica 15/1999, de 13 de diciembre, de Protección de Datos de Carácter Personal y en virtud de lo establecido en la Ley 34/2002, de 11 de julio, de Servicios de la Sociedad de la Información y de Comercio electrónico, le informamos que:
El presente Política de Privacidad establece los términos en que **AppToLast** usa y protege la información que es proporcionada por sus usuarios al momento de utilizar su sitio web y sus app Android asociadas. Esta compañía está comprometida con la seguridad de los datos de sus usuarios. Cuando le pedimos llenar los campos de información personal con la cual usted pueda ser identificado, lo hacemos asegurando que sólo se empleará de acuerdo con los términos de este documento. Sin embargo esta Política de Privacidad puede cambiar con el tiempo o ser actualizada por lo que le recomendamos y enfatizamos revisar continuamente esta página para asegurarse que está de acuerdo con dichos cambios.

## Información recogida
Nuestro sitio web o aplicaciones móviles podrá recoger información personal por ejemplo: Nombre, información de contacto como su dirección de correo electrónica e información demográfica. Así mismo cuando sea necesario podrá ser requerida información específica para procesar algún pedido o realizar una entrega o facturación.

## Uso de la información recogida
Nuestro sitio web emplea la información con el fin de proporcionar el mejor servicio posible, particularmente para mantener un registro de usuarios, de pedidos en caso que aplique, y mejorar nuestros productos y servicios. Es posible que sean enviados correos electrónicos periódicamente a través de nuestro sitio con ofertas especiales, nuevos productos y otra información publicitaria que consideremos relevante para usted o que pueda brindarle algún beneficio, estos correos electrónicos serán enviados a la dirección que usted proporcione y podrán ser cancelados en cualquier momento. Además nos aseguraremos que dichos correos no sean abusivos ni entorpezcan el normal funcionamiento de su cuenta de correo.
AppToLast está altamente comprometido para cumplir con el compromiso de mantener su información segura. Usamos los sistemas más avanzados y los actualizamos constantemente para asegurarnos que no exista ningún acceso no autorizado.

## Cookies
Una cookie se refiere a un fichero que es enviado con la finalidad de solicitar permiso para almacenarse en su ordenador, al aceptar dicho fichero se crea y la cookie sirve entonces para tener información respecto al tráfico web, y también facilita las futuras visitas a una web recurrente. Otra función que tienen las cookies es que con ellas las web pueden reconocerte individualmente y por tanto brindarte el mejor servicio personalizado de su web.
Nuestro sitio web emplea las cookies para poder identificar las páginas que son visitadas y su frecuencia. Esta información es empleada únicamente para análisis estadístico y después la información se elimina de forma permanente. Usted puede eliminar las cookies en cualquier momento desde su ordenador. Sin embargo las cookies ayudan a proporcionar un mejor servicio de los sitios web, estás no dan acceso a información de su ordenador ni de usted, a menos de que usted así lo quiera y la proporcione directamente. Usted puede aceptar o negar el uso de cookies, sin embargo la mayoría de navegadores aceptan cookies automáticamente pues sirve para tener un mejor servicio web. También usted puede cambiar la configuración de su ordenador para declinar las cookies. Si se declinan es posible que no pueda utilizar algunos de nuestros servicios.

## Enlaces a Terceros
Este sitio web pudiera contener en laces a otros sitios que pudieran ser de su interés. Una vez que usted de clic en estos enlaces y abandone nuestra página, ya no tenemos control sobre al sitio al que es redirigido y por lo tanto no somos responsables de los términos o privacidad ni de la protección de sus datos en esos otros sitios terceros. Dichos sitios están sujetos a sus propias políticas de privacidad por lo cual es recomendable que los consulte para confirmar que usted está de acuerdo con estas.

## Control de su información personal
En cualquier momento usted puede restringir la recopilación o el uso de la información personal que es proporcionada a nuestro sitio web. Cada vez que se le solicite rellenar un formulario, como el de alta de usuario, puede marcar o desmarcar la opción de recibir información por correo electrónico. En caso de que haya marcado la opción de recibir nuestro boletín o publicidad usted puede cancelarla en cualquier momento.
Esta compañía NO venderá, cederá ni distribuirá la información personal que es recopilada sin su consentimiento, salvo que sea requerido por un juez con un orden judicial.

AppToLast se reserva el derecho de cambiar los términos de la presente Política de Privacidad en cualquier momento aunque se compromete a notificar cambios importantes si se producen.
Loading
Loading