Forums

OverviewFelgo 2 Support (Qt 5) › How could I create a fingerprint authentication screen on android?

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #22907

    NgapWei

    The project is place at google drive. You can download and build it if you like.

     

    Things I have done.

     

    1. Follow the tutorial at here. Use the FingerprintManager to perform the authentication task.
    2. In order to make it work, I copied the layout and other xml files into the res folder, add missed property into the res/values/strings.xml
    3. Create a class finger_print_auth and create the MainActivity in QtAndroid::runOnAndroidThreadSync as shown in the pastebin.
    4. Change the android manifest from manifest package=”com.tham.wizardEVAP.Androidui” to manifest package=”com.tham” else the compiler always complain cannot find R package.
    5. Compile and run on the android mobile, then it show error message “com.tham died”

    Any suggestions to solve this issue? Any tutorials to tell us how to show the android ui(those design with Activity, xml) on Qt apps?Thanks

    #22954

    Alex
    Felgo Team
    #22971

    NgapWei

    Thanks for the import suggestion, I am able to find the R package after that.

     

    The reason it crash, I guess is due to some weird license issues of felgo(I don’t know why this happen, sometimes felgo cannot find the license etc), after I create a new project, the app do not crash again, problem is the ui of the login authentication do not shown(specified by res/layout/activity_main.xml).

     

    Tried to debug it(MainActivity place at pastebin) but the console do not print anything.

    #22972

    NgapWei

    By the way, I call the Activity(MainActivity.java) in an QObject child.

     

    like these

     

    finger_print_auth::finger_print_auth(QObject *parent) : QObject(parent)
    {
         qInfo()<<__func__<<": initialize finger_print_auth"
         QtAndroid::runOnAndroidThreadSync([this]()
         {
             auth_ = new QAndroidJniObject("com/tham/biometric/MainActivity");
            qInfo()<<__func__<<": initialize finger_print_auth created";
         });           
    }

     

    And then I call it in the Main.qml like this

     

    App{

    FingerAuth{}

    }

Viewing 4 posts - 1 through 4 (of 4 total)

RSS feed for this thread

You must be logged in to reply to this topic.

Voted #1 for:

  • Easiest to learn
  • Most time saving
  • Best support

Develop Cross-Platform Apps and Games 50% Faster!

  • Voted the best supported, most time-saving and easiest to learn cross-platform development tool
  • Based on the Qt framework, with native performance and appearance on all platforms including iOS and Android
  • Offers a variety of plugins to monetize, analyze and engage users
FREE!
create apps
create games
cross platform
native performance
3rd party services
game network
multiplayer
level editor
easiest to learn
biggest time saving
best support