/nfc_mobile_app

An app for small and medium organizations (SME) manager, with NFC-tag, e-tag and QR code features supported.

Primary LanguageDartApache License 2.0Apache-2.0

BK LAB Manager - an app for group management

1. Getting Started

An app for small and medium organizations (SME) manager, with NFC-tag, e-tag and QR code features supported. ADMIN right can create and manager user accounts, user not logged in shall stay guest user. Main features:

  • Agency in-out gate control with QR code and e-tag
  • User info sharing with personal QR code
  • Display and stats for users' status (online, offline)
  • Authiencation log-in and sign-in

2. Updates and releases!!!

For all release features and publised product UI, check out release page

  • 【Sep 16, 2022】 version 0.2.0-alpha (pre-released version)
  • 【Sep 22, 2022】 version 1.0.0, first version release
  • 【Oct 08, 2022】 version 1.1.0, minor improved from first version

3. Reproducing process

3.1. Support plaftforms
  • We support iOS, Android, Windows mobile, tablet platform
  • Tested on iphone XS Max, Redmi 9A and other iOS, Android devices.
3.2. Reproduce steps on Android:
  • Reproduce steps on physical devices:
    1. Enable Developer Options on Android device setting (USB debug, install via USB).
    2. Install Android Studio and plug your device into your computer.
    3. Open Android Studio and run app with Android Studio.
    4. If error return, run with following commands: flutter run --no-sound-null-safety
  • Reproduce steps on virtual devices:
    1. Install Android Studio, create a virtual device on Android Studio
    2. Run app with Android Studio on virtual device
3.3. Reproduce steps on iOS (physical device):
  1. MacOS required, install XCode on MacOS device, connect your device to MacOS
  2. In Terminal, navigate to this folder, type in:
open ios/Runner.xcworkspace
  1. In XCode, "Product" -> "Build for" -> "Profiling"
  2. In XCode, "Product" -> "Perform Actions" -> "Profile Without Building"
  3. In iOS device, open Setting, "Trust this developer"
3.3. Reproduce steps using Command line:
  • You can also build apk and install app without using Android Studio, by using Terminal Command Line.
  • Command line for build Android apk:
flutter build apk --release --no-sound-null-safety
  • Command line for build iOS:
flutter build ios --no-sound-null-safety                          
  • Command line for run app on Android, iOS:
flutter run --no-sound-null-safety

4. Developer guide

4.1. Language and framework:
4.2. Deps and source code architecture:
4.3. Implementation process:

5. Testing methods and materials:

5.1. Scanning QR for checking-in test:
  • Please perform QR scanning QR codes below for checking in CTARG 618 Ta Quang Buu Library, then click Update Status:

  • Also, QR scanning codes below for checking in 410 C9 Building, then click Update Status:

  • NOTE: user can only check in and update status as ONLINE between 8 a.m and 6 p.m everyday, including Saturday and Sunday. Outside these time range, "Update Status" button will return error dialog and user's status remains OFFLINE
5.2. Scanning QR for info exchange:
  • Please perform QR scanning QR codes below for info exchange, then click Open Contact From QR:

  • NOTE: These QR Codes above contain facebook and instagram link of Marc Zuckerberg (CEO of Meta), CR7 (a famous footballer) and Chelsea Football Club. The phone number and MS Teams account is random.
5.2. Test case when scanning random QR code:
  • Check out below random QR Codes, scan them with our app:

5.3. Accounts used for testing, logging-in (starting from version 1.1.0):
  • Please contact authors if you need accounts for testing, logging-in via email: son.tt2460M@sis.hust.edu.vn
  • Members of CTARG and MAP will be provided with an account

6. Authors and credits:

In research and development process, all credits go to Son Tran BK (1st author), Duc Anh BK (2nd author) and CTARG LAB members, in EEE, HUST (Hanoi University of Science and Technology), Ha Noi, Viet Nam