From 3a0a31f7811098d2bf127d0a7b7061388b912f0f Mon Sep 17 00:00:00 2001 From: Seil0 Date: Sat, 17 Aug 2019 01:51:15 +0200 Subject: [PATCH] first bits of the nfc reader --- app/src/main/AndroidManifest.xml | 14 +++++++++++++- .../org/mosad/seil0/projectlaogai/MainActivity.kt | 14 ++++++++++++++ .../seil0/projectlaogai/fragments/MensaFragment.kt | 1 - app/src/main/res/layout/fragment_timetable.xml | 2 +- app/src/main/res/xml/nfc_tech_filter.xml | 6 ++++++ 5 files changed, 34 insertions(+), 3 deletions(-) create mode 100644 app/src/main/res/xml/nfc_tech_filter.xml diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 6c4c3f9..2693fae 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -2,6 +2,7 @@ + + @@ -27,7 +29,17 @@ android:name=".MainActivity" android:label="@string/app_name" android:theme="@style/AppTheme.Light" - android:screenOrientation="portrait"> + android:screenOrientation="portrait" + android:launchMode="singleTop"> + + + + + + + + diff --git a/app/src/main/java/org/mosad/seil0/projectlaogai/MainActivity.kt b/app/src/main/java/org/mosad/seil0/projectlaogai/MainActivity.kt index 09ab1f6..454365b 100644 --- a/app/src/main/java/org/mosad/seil0/projectlaogai/MainActivity.kt +++ b/app/src/main/java/org/mosad/seil0/projectlaogai/MainActivity.kt @@ -23,6 +23,8 @@ package org.mosad.seil0.projectlaogai import android.graphics.Color +import android.nfc.NfcAdapter +import android.nfc.Tag import android.os.Bundle import android.view.Menu import android.view.MenuItem @@ -32,6 +34,7 @@ import androidx.core.view.GravityCompat import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentTransaction import com.afollestad.aesthetic.Aesthetic +import com.afollestad.materialdialogs.MaterialDialog import com.google.android.material.navigation.NavigationView import kotlinx.android.synthetic.main.activity_main.* import kotlinx.android.synthetic.main.app_bar_main.* @@ -42,6 +45,7 @@ import org.mosad.seil0.projectlaogai.controller.PreferencesController.Companion. import org.mosad.seil0.projectlaogai.fragments.* import kotlin.system.measureTimeMillis +// TODO save the current fragment to show it when the app is restarted class MainActivity : AppCompatActivity(), NavigationView.OnNavigationItemSelectedListener { private var activeFragment: Fragment = HomeFragment() // the currently active fragment, home at the start @@ -68,6 +72,16 @@ class MainActivity : AppCompatActivity(), NavigationView.OnNavigationItemSelecte toggle.syncState() nav_view.setNavigationItemSelectedListener(this) + + // TODO nfc stuff, needs to move to it's own function + if (intent.action == NfcAdapter.ACTION_TECH_DISCOVERED) { + + val tag: Tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG) + MaterialDialog(this) + .title(text = "nfc tag detected") + .message(text = tag.toString()) + .show() + } } override fun onResume() { diff --git a/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/MensaFragment.kt b/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/MensaFragment.kt index 4c3f64b..1341914 100644 --- a/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/MensaFragment.kt +++ b/app/src/main/java/org/mosad/seil0/projectlaogai/fragments/MensaFragment.kt @@ -43,7 +43,6 @@ import org.mosad.seil0.projectlaogai.uicomponents.MealLinearLayout /** * The mensa controller class * contains all needed parts to display and the mensa detail screen - * TODO investigate reading the mensa card value via nfc in a background task, show value if card detected */ class MensaFragment : Fragment() { diff --git a/app/src/main/res/layout/fragment_timetable.xml b/app/src/main/res/layout/fragment_timetable.xml index da2c6ad..94e22d4 100644 --- a/app/src/main/res/layout/fragment_timetable.xml +++ b/app/src/main/res/layout/fragment_timetable.xml @@ -27,6 +27,6 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:clickable="true" android:id="@+id/faBtnAddLesson" android:elevation="7dp" - android:visibility="visible" android:layout_gravity="bottom|center|end" android:layout_marginEnd="11dp" + android:visibility="gone" android:layout_gravity="bottom|center|end" android:layout_marginEnd="11dp" android:layout_marginBottom="11dp" android:focusable="true"/> \ No newline at end of file diff --git a/app/src/main/res/xml/nfc_tech_filter.xml b/app/src/main/res/xml/nfc_tech_filter.xml new file mode 100644 index 0000000..eb44974 --- /dev/null +++ b/app/src/main/res/xml/nfc_tech_filter.xml @@ -0,0 +1,6 @@ + + + + android.nfc.tech.NfcA + +