Password Management Application Created in Flutter

ZeePass

Flutter based Password Management Application.

Upgrade

You can upgrade Flutter by running the following command:

flutter upgrade

List devices

flutter devices

Run

  • Current device:
flutter run
  • Web:
flutter run -d chrome
  • Mac OS:
flutter run -d macos

Build

  • Android:
flutter build appbundle --target-platform android-arm,android-arm64,android-x64
flutter build apk --target-platform android-arm64
  • Web:
flutter build web
  • Mac OS:
flutter build macos

Plugins:

  • There is plugin called flutter_launcher_icons which can be used to create icons for Android, iOS automatically.

    • Install:

      • Add the following in pubspec.yaml

        dependencies:
          flutter_launcher_icons: ^0.7.5
        
        flutter_icons:
          image_path: "icons/icon.png"
          android: true
          ios: true
        
      • Run the following commands:

      flutter pub get
      flutter pub pub run flutter_launcher_icons:main
      

Firebase Configuration:

  • For Android:
    • Paste google-services.json inside project/firebase/android directory
  • For iOS:
    • Paste GoogleService-Info.plist inside project/firebase/ios directory
  • For Web:
    • Include Firebase config i.e. ‘firebase-init.js’ inside project/web/index.html
  • For Mac OS
    • Paste GoogleService-Info.plist inside project/macos/Runner directory and then open project in Xcode and drag the drag in Runner directory again.

Issues:

  • [GoogleDataTransport] There was an error uploading events: Error Domain=NSPOSIXErrorDomain Code=1 “Operation not permitted” UserInfo={_kCFStreamErrorCodeKey=1, _kCFStreamErrorDomainKey=1}

    • Open project/macos/Runner/DebugProfile.entitlements and add this key:
      <key>com.apple.security.network.client</key>
      <true/>
    
  • [GoogleSignIn] Google sign in crashes the app in IOS device

    • Open project/ios/Runner/Info.plist and add this key:
      <!-- Google Sign-in Section -->
      <key>CFBundleURLTypes</key>
      <array>
        <dict>
          <key>CFBundleTypeRole</key>
          <string>Editor</string>
          <key>CFBundleURLSchemes</key>
          <array>
            <!-- TODO Replace this value: -->
            <!-- Copied from GoogleService-Info.plist key REVERSED_CLIENT_ID -->
            <string>com.googleusercontent.apps.861823949799-vc35cprkp249096uujjn0vvnmcvjppkn</string>
          </array>
        </dict>
      </array>
      <!-- End of the Google Sign-in Section -->
    
  • [GoogleSignIn] ppClientId != null “ClientID not set. Either set it on a tag, or pass clientId when calling init()”

    • Open Google Developers Credentials and find your OAuth 2.0 Web Client ID or create if not available.
    • Open project/web/index.html and add this meta tag:
    <meta name="google-signin-client_id"
        content="YOUR_CLIENT_ID.apps.googleusercontent.com" />
    
  • [GoogleSignIn] Error: PlatformException(google_sign_in, idpiframe_initialization_failed, Not a valid origin for the client: ‘URL’ has not been whitelisted for client ID YOUR_CLIENT_ID.apps.googleusercontent.com. Please go to https://console.developers.google.com/ and whitelist this origin for your project’s client ID.)

  • [OAuth] Error 403: restricted_client This app is not yet configured to make OAuth requests. To do that, set up the app’s OAuth consent screen in the Google Cloud Console.

  • [OAuth] The identity provider configuration is disabled.

    • Go to your Project’s Authentication page in Firebase and then Make sure to enable Google in Authentication sign-in methods.

Download Details:

Author: jzorjnz

Source Code: https://github.com/jzorjnz/ZeePass

#flutter #dart #mobile-apps

Password Management Application Created in Flutter
4.20 GEEK