doctor app upgraded to flutter 3.27 android sdk version elevated to 35

master
Syed Taha Alam 6 months ago
parent f40adfb087
commit 0a07351628

@ -1,3 +1,10 @@
plugins {
id 'com.android.application'
id 'org.jetbrains.kotlin.android'
id "dev.flutter.flutter-gradle-plugin"
id "com.google.gms.google-services"
}
def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
@ -6,11 +13,6 @@ if (localPropertiesFile.exists()) {
}
}
def flutterRoot = localProperties.getProperty('flutter.sdk')
if (flutterRoot == null) {
throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
}
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
flutterVersionCode = '1'
@ -21,12 +23,14 @@ if (flutterVersionName == null) {
flutterVersionName = '1.0'
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
//apply plugin: 'com.android.application'
//apply plugin: 'kotlin-android'
//apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
android {
compileSdkVersion 34
namespace "com.hmg.hmgDr"
compileSdkVersion 35
signingConfigs {
release {
@ -49,7 +53,7 @@ android {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "com.hmg.hmgDr"
minSdkVersion 24
targetSdkVersion 34
targetSdkVersion 35
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
@ -95,8 +99,8 @@ android {
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}
}
@ -106,7 +110,7 @@ flutter {
}
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
// implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'androidx.appcompat:appcompat:1.1.0'
@ -125,7 +129,7 @@ dependencies {
implementation 'com.opentok.android:opentok-android-sdk:2.20.1'
//permissions
// implementation 'pub.devrel:easypermissions:0.4.0'
implementation project(':easypermissions')
// implementation project(':easypermissions')
//retrofit
@ -137,4 +141,4 @@ dependencies {
implementation 'com.android.support:multidex:1.0.3'
implementation 'com.google.firebase:firebase-analytics:17.4.1'
}
apply plugin: 'com.google.gms.google-services'
//apply plugin: 'com.google.gms.google-services'

@ -25,9 +25,9 @@ import io.flutter.embedding.engine.FlutterEngine
import io.flutter.plugin.common.MethodCall
import io.flutter.plugin.common.MethodChannel
import io.flutter.plugins.GeneratedPluginRegistrant
import pub.devrel.easypermissions.AfterPermissionGranted
import pub.devrel.easypermissions.AppSettingsDialog
import pub.devrel.easypermissions.EasyPermissions
//import pub.devrel.easypermissions.AfterPermissionGranted
//import pub.devrel.easypermissions.AppSettingsDialog
//import pub.devrel.easypermissions.EasyPermissions
class MainActivity : FlutterFragmentActivity(), MethodChannel.MethodCallHandler,

@ -1,4 +1,4 @@
package com.hmg.hmgDr.model
package com.hmg.hmgDr.Model
/** Represents standard data needed for a Notification. */
open class NotificationDataModel(

@ -1,9 +1,7 @@
package com.hmg.hmgDr.model
package com.hmg.hmgDr.Model
import android.app.Notification
import android.app.NotificationManager
import android.os.Build
import androidx.annotation.RequiresApi
import androidx.core.app.NotificationCompat
class NotificationVideoModel constructor(

@ -2,11 +2,8 @@ package com.hmg.hmgDr.Service
import android.annotation.SuppressLint
import android.app.*
import android.content.Context
import android.content.Intent
import android.graphics.BitmapFactory
import android.graphics.PixelFormat
import android.graphics.Point
import android.opengl.GLSurfaceView
import android.os.*
import android.util.Log
@ -21,7 +18,7 @@ import com.hmg.hmgDr.Model.ChangeCallStatusRequestModel
import com.hmg.hmgDr.Model.GetSessionStatusModel
import com.hmg.hmgDr.Model.SessionStatusModel
import com.hmg.hmgDr.R
import com.hmg.hmgDr.model.*
import com.hmg.hmgDr.Model.*
import com.hmg.hmgDr.ui.VideoCallContract
import com.hmg.hmgDr.ui.VideoCallPresenterImpl
import com.hmg.hmgDr.ui.VideoCallResponseListener
@ -32,7 +29,6 @@ import com.hmg.hmgDr.util.ViewsUtil
import com.hmg.hmgDr.util.audio.CustomAudioDevice
import com.opentok.android.*
import java.util.*
import kotlin.math.ceil
class VideoStreamFloatingWidgetService : BaseMovingFloatingWidget(), Session.SessionListener,

@ -32,15 +32,15 @@ import com.hmg.hmgDr.util.opentok.DynamicVideoRenderer
import com.hmg.hmgDr.util.ViewsUtil
import com.opentok.android.*
import com.opentok.android.PublisherKit.PublisherListener
import pub.devrel.easypermissions.AfterPermissionGranted
import pub.devrel.easypermissions.AppSettingsDialog
import pub.devrel.easypermissions.EasyPermissions
import pub.devrel.easypermissions.EasyPermissions.PermissionCallbacks
//import pub.devrel.easypermissions.AfterPermissionGranted
//import pub.devrel.easypermissions.AppSettingsDialog
//import pub.devrel.easypermissions.EasyPermissions
//import pub.devrel.easypermissions.EasyPermissions.PermissionCallbacks
import kotlin.math.ceil
// check this if it works to solve keyboard not work when dialog is opened
// https://stackoverflow.com/questions/55066977/how-to-prevent-custom-dialogfragment-from-hiding-keyboard-when-being-shown
class VideoCallFragment : DialogFragment(), PermissionCallbacks, Session.SessionListener,
class VideoCallFragment : DialogFragment(), Session.SessionListener,
PublisherListener,
SubscriberKit.VideoListener, VideoCallView {
@ -385,66 +385,66 @@ class VideoCallFragment : DialogFragment(), PermissionCallbacks, Session.Session
grantResults: IntArray
) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults)
EasyPermissions.onRequestPermissionsResult(requestCode, permissions, grantResults, this)
// EasyPermissions.onRequestPermissionsResult(requestCode, permissions, grantResults, this)
}
override fun onPermissionsGranted(requestCode: Int, perms: List<String?>) {
Log.d(TAG, "onPermissionsGranted:" + requestCode + ":" + perms.size)
}
override fun onPermissionsDenied(requestCode: Int, perms: List<String?>) {
Log.d(TAG, "onPermissionsDenied:" + requestCode + ":" + perms.size)
if (EasyPermissions.somePermissionPermanentlyDenied(this, perms)) {
AppSettingsDialog.Builder(this)
.setTitle(getString(R.string.title_settings_dialog))
.setRationale(getString(R.string.rationale_ask_again))
.setPositiveButton(getString(R.string.setting))
.setNegativeButton(getString(R.string.cancel))
.setRequestCode(RC_SETTINGS_SCREEN_PERM)
.build()
.show()
}
}
// override fun onPermissionsGranted(requestCode: Int, perms: List<String?>) {
// Log.d(TAG, "onPermissionsGranted:" + requestCode + ":" + perms.size)
// }
//
// override fun onPermissionsDenied(requestCode: Int, perms: List<String?>) {
// Log.d(TAG, "onPermissionsDenied:" + requestCode + ":" + perms.size)
// if (EasyPermissions.somePermissionPermanentlyDenied(this, perms)) {
// AppSettingsDialog.Builder(this)
// .setTitle(getString(R.string.title_settings_dialog))
// .setRationale(getString(R.string.rationale_ask_again))
// .setPositiveButton(getString(R.string.setting))
// .setNegativeButton(getString(R.string.cancel))
// .setRequestCode(RC_SETTINGS_SCREEN_PERM)
// .build()
// .show()
// }
// }
@AfterPermissionGranted(RC_VIDEO_APP_PERM)
// @AfterPermissionGranted(RC_VIDEO_APP_PERM)
private fun requestPermissions() {
val perms = arrayOf(
Manifest.permission.INTERNET,
Manifest.permission.CAMERA,
Manifest.permission.RECORD_AUDIO,
Manifest.permission.MODIFY_AUDIO_SETTINGS,
Manifest.permission.CALL_PHONE
)
if (EasyPermissions.hasPermissions(requireContext(), *perms)) {
try {
mSession = Session.Builder(context, apiKey, sessionId).build()
mSession!!.setSessionListener(this)
mSession!!.connect(token)
mSession!!.setReconnectionListener(object :Session.ReconnectionListener{
override fun onReconnecting(p0: Session?) {
}
override fun onReconnected(session: Session?) {
session?.connect(token)
}
})
} catch (e: Exception) {
e.printStackTrace()
}
} else {
EasyPermissions.requestPermissions(
this,
getString(R.string.remaining_ar),
RC_VIDEO_APP_PERM,
*perms
)
}
// val perms = arrayOf(
// Manifest.permission.INTERNET,
// Manifest.permission.CAMERA,
// Manifest.permission.RECORD_AUDIO,
// Manifest.permission.MODIFY_AUDIO_SETTINGS,
// Manifest.permission.CALL_PHONE
// )
// if (EasyPermissions.hasPermissions(requireContext(), *perms)) {
// try {
// mSession = Session.Builder(context, apiKey, sessionId).build()
// mSession!!.setSessionListener(this)
// mSession!!.connect(token)
//
// mSession!!.setReconnectionListener(object :Session.ReconnectionListener{
// override fun onReconnecting(p0: Session?) {
//
// }
//
// override fun onReconnected(session: Session?) {
// session?.connect(token)
// }
//
//
// })
//
//
// } catch (e: Exception) {
// e.printStackTrace()
// }
// } else {
// EasyPermissions.requestPermissions(
// this,
// getString(R.string.remaining_ar),
// RC_VIDEO_APP_PERM,
// *perms
// )
// }
}
override fun onConnected(session: Session?) {

@ -7,8 +7,8 @@ import android.content.Intent
import android.graphics.Color
import android.os.Build
import androidx.core.app.NotificationCompat
import com.hmg.hmgDr.model.NotificationDataModel
import com.hmg.hmgDr.model.NotificationVideoModel
import com.hmg.hmgDr.Model.NotificationDataModel
import com.hmg.hmgDr.Model.NotificationVideoModel
object NotificationUtil {

@ -1,16 +1,16 @@
buildscript {
ext.kotlin_version = '2.0.0'
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.1.3'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.google.gms:google-services:4.3.3'
}
}
//buildscript {
// ext.kotlin_version = '2.0.0'
// repositories {
// google()
// jcenter()
// }
//
// dependencies {
// classpath 'com.android.tools.build:gradle:8.1.0'
// classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
// classpath 'com.google.gms:google-services:4.3.3'
// }
//}
allprojects {
repositories {
@ -33,8 +33,19 @@ subprojects {
if (project.plugins.hasPlugin("com.android.application") ||
project.plugins.hasPlugin("com.android.library")) {
project.android {
compileSdkVersion 34
buildToolsVersion "34.0.0"
compileSdkVersion 35
buildToolsVersion "35.0.0"
}
}
}
}
subprojects {
afterEvaluate { project ->
if (project.hasProperty('android')) {
project.android {
if (namespace == null) {
namespace project.group
}
}
}
}

@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-all.zip

@ -1,15 +1,28 @@
include ':app', ':easypermissions'
pluginManagement {
def flutterSdkPath = {
def properties = new Properties()
file("local.properties").withInputStream { properties.load(it) }
def flutterSdkPath = properties.getProperty("flutter.sdk")
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
return flutterSdkPath
}()
def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()
includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
def plugins = new Properties()
def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
if (pluginsFile.exists()) {
pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) }
repositories {
google()
mavenCentral()
gradlePluginPortal()
}
}
plugins.each { name, path ->
def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile()
include ":$name"
project(":$name").projectDir = pluginDirectory
plugins {
id 'dev.flutter.flutter-plugin-loader' version "1.0.0" // apply true
id "org.jetbrains.kotlin.android" version "2.0.0" apply false
id 'com.android.application' version "8.3.2" apply false
id "com.google.gms.google-services" version "4.4.0" apply false
}
include ":app"
//include ":easy_permissions"

@ -1,6 +1,7 @@
import 'dart:async';
import 'package:connectivity/connectivity.dart';
import 'package:connectivity_plus/connectivity_plus.dart';
import 'package:connectivity_plus/connectivity_plus.dart';
import 'package:doctor_app_flutter/client/base_app_client.dart';
import 'package:doctor_app_flutter/config/config.dart';
import 'package:doctor_app_flutter/config/shared_pref_kay.dart';
@ -46,18 +47,8 @@ class ProjectViewModel with ChangeNotifier {
ProjectViewModel() {
loadSharedPrefLanguage();
subscription = Connectivity().onConnectivityChanged.listen((ConnectivityResult result) {
switch (result) {
case ConnectivityResult.wifi:
isInternetConnection = true;
break;
case ConnectivityResult.mobile:
isInternetConnection = true;
break;
case ConnectivityResult.none:
isInternetConnection = false;
break;
}
subscription = Connectivity().onConnectivityChanged.listen((List<ConnectivityResult> result) {
isInternetConnection = result.contains(ConnectivityResult.wifi)||result.contains(ConnectivityResult.mobile);
notifyListeners();
});
}

@ -1,5 +1,5 @@
import 'package:cloud_firestore/cloud_firestore.dart';
// import 'package:cloud_firestore/cloud_firestore.dart';
List<String> monitoredEndpoints = [
"Services/Sentry.svc/REST/MemberLogIN_New",
@ -49,18 +49,18 @@ void postRequestAndResponse({
if(!monitoredEndpoints.contains(urlSuffix)) {
return;
}
print(" the url is being logged ");
Map<String, String> data = {
"url" : completeUrl,
"request" : request,
"response" : response,
"statusCode" : statusCode,
};
final firestore = FirebaseFirestore.instance;
// Sanitize urlSuffix to be Firestore-safe
final safeSuffix = urlSuffix.replaceAll(RegExp(r'[^a-zA-Z0-9_-]'), '_');
final collectionRef = firestore.collection('doctors')
.doc(doctorId.toString())
.collection(safeSuffix);
await collectionRef.doc(DateTime.now().toIso8601String()).set(data);
// print(" the url is being logged ");
// Map<String, String> data = {
// "url" : completeUrl,
// "request" : request,
// "response" : response,
// "statusCode" : statusCode,
// };
// final firestore = FirebaseFirestore.instance;
// // Sanitize urlSuffix to be Firestore-safe
// final safeSuffix = urlSuffix.replaceAll(RegExp(r'[^a-zA-Z0-9_-]'), '_');
// final collectionRef = firestore.collection('doctors')
// .doc(doctorId.toString())
// .collection(safeSuffix);
// await collectionRef.doc(DateTime.now().toIso8601String()).set(data);
}

@ -1,4 +1,4 @@
import 'package:connectivity/connectivity.dart';
import 'package:connectivity_plus/connectivity_plus.dart';
import 'package:doctor_app_flutter/config/config.dart';
import 'package:doctor_app_flutter/core/model/doctor/list_doctor_working_hours_table_model.dart';
import 'package:doctor_app_flutter/core/model/hospitals/get_hospitals_response_model.dart';
@ -141,12 +141,8 @@ class Utils {
}
static Future<bool> checkConnection() async {
ConnectivityResult connectivityResult = await (Connectivity().checkConnectivity());
if ((connectivityResult == ConnectivityResult.mobile) || (connectivityResult == ConnectivityResult.wifi)) {
return true;
} else {
return false;
}
List<ConnectivityResult> result = await (Connectivity().checkConnectivity());
return result.contains(ConnectivityResult.wifi)||result.contains(ConnectivityResult.mobile);
}
static List<WorkingHours> getWorkingHours(String workingHours) {

@ -5,7 +5,7 @@
import FlutterMacOS
import Foundation
import connectivity_macos
import connectivity_plus
import firebase_analytics
import firebase_core
import firebase_messaging
@ -13,12 +13,12 @@ import flutter_inappwebview_macos
import maps_launcher
import path_provider_foundation
import shared_preferences_foundation
import speech_to_text_macos
import speech_to_text
import sqflite_darwin
import url_launcher_macos
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
ConnectivityPlugin.register(with: registry.registrar(forPlugin: "ConnectivityPlugin"))
ConnectivityPlusPlugin.register(with: registry.registrar(forPlugin: "ConnectivityPlusPlugin"))
FLTFirebaseAnalyticsPlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseAnalyticsPlugin"))
FLTFirebaseCorePlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseCorePlugin"))
FLTFirebaseMessagingPlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseMessagingPlugin"))
@ -26,7 +26,7 @@ func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
MapsLauncherPlugin.register(with: registry.registrar(forPlugin: "MapsLauncherPlugin"))
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin"))
SpeechToTextMacosPlugin.register(with: registry.registrar(forPlugin: "SpeechToTextMacosPlugin"))
SpeechToTextPlugin.register(with: registry.registrar(forPlugin: "SpeechToTextPlugin"))
SqflitePlugin.register(with: registry.registrar(forPlugin: "SqflitePlugin"))
UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin"))
}

@ -17,6 +17,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.3.25"
adaptive_number:
dependency: transitive
description:
name: adaptive_number
sha256: "3a567544e9b5c9c803006f51140ad544aedc79604fd4f3f2c1380003f97c1d77"
url: "https://pub.dev"
source: hosted
version: "1.0.0"
analyzer:
dependency: transitive
description:
@ -69,10 +77,10 @@ packages:
dependency: "direct main"
description:
name: barcode_scan2
sha256: a2ab566027cd57b2795ea42aa26835dbaa8fe70bcc1aff54942a14d3705dff97
sha256: "0f3eb7c0a0c80a0f65d3fa88737544fdb6d27127a4fad566e980e626f3fb76e1"
url: "https://pub.dev"
source: hosted
version: "4.3.3"
version: "4.5.1"
bazel_worker:
dependency: transitive
description:
@ -117,10 +125,10 @@ packages:
dependency: transitive
description:
name: build_modules
sha256: "9987d67a29081872e730468295fc565e9a2b377ca3673337c1d4e41d57c6cd7c"
sha256: "0327cb2a9eefba197b63f71872c38bafe4c63b331797a43618d6c270516a6447"
url: "https://pub.dev"
source: hosted
version: "5.0.8"
version: "5.0.11"
build_resolvers:
dependency: transitive
description:
@ -149,10 +157,10 @@ packages:
dependency: "direct dev"
description:
name: build_web_compilers
sha256: "9071a94aa67787cebdd9e76837c9d2af61fb5242db541244f6a0b6249afafb46"
sha256: "01cfac85e835d9fe8e87928958586ddbd477d98cfac5af2442cb2df6bbb42dff"
url: "https://pub.dev"
source: hosted
version: "4.0.10"
version: "4.1.1"
built_collection:
dependency: transitive
description:
@ -173,26 +181,26 @@ packages:
dependency: "direct main"
description:
name: cached_network_image
sha256: "28ea9690a8207179c319965c13cd8df184d5ee721ae2ce60f398ced1219cea1f"
sha256: "7c1183e361e5c8b0a0f21a28401eecdbde252441106a9816400dd4c2b2424916"
url: "https://pub.dev"
source: hosted
version: "3.3.1"
version: "3.4.1"
cached_network_image_platform_interface:
dependency: transitive
description:
name: cached_network_image_platform_interface
sha256: "9e90e78ae72caa874a323d78fa6301b3fb8fa7ea76a8f96dc5b5bf79f283bf2f"
sha256: "35814b016e37fbdc91f7ae18c8caf49ba5c88501813f73ce8a07027a395e2829"
url: "https://pub.dev"
source: hosted
version: "4.0.0"
version: "4.1.1"
cached_network_image_web:
dependency: transitive
description:
name: cached_network_image_web
sha256: "205d6a9f1862de34b93184f22b9d2d94586b2f05c581d546695e3d8f6a805cd7"
sha256: "980842f4e8e2535b8dbd3d5ca0b1f0ba66bf61d14cc3a17a9b4788a3685ba062"
url: "https://pub.dev"
source: hosted
version: "1.2.0"
version: "1.3.1"
characters:
dependency: transitive
description:
@ -233,14 +241,6 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.1.1"
cloudflare_turnstile:
dependency: "direct main"
description:
name: cloudflare_turnstile
sha256: "3f11c0e7336b266e4eb4e594e7603972902832e10ace004a2c710e93abb81bfe"
url: "https://pub.dev"
source: hosted
version: "3.0.1"
code_builder:
dependency: transitive
description:
@ -253,39 +253,23 @@ packages:
dependency: transitive
description:
name: collection
sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a
sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf
url: "https://pub.dev"
source: hosted
version: "1.18.0"
connectivity:
version: "1.19.0"
connectivity_plus:
dependency: "direct main"
description:
name: connectivity
sha256: a8e91263cf3e25fb5cc95e19dfde4999e32a648ac3b9e8a558a28165731678f8
url: "https://pub.dev"
source: hosted
version: "3.0.6"
connectivity_for_web:
dependency: transitive
description:
name: connectivity_for_web
sha256: "01a390c1d5adc2ed1fa1f52d120c07fe9fd01166a93f965a832fd6cfc0ea6482"
name: connectivity_plus
sha256: "051849e2bd7c7b3bc5844ea0d096609ddc3a859890ec3a9ac4a65a2620cc1f99"
url: "https://pub.dev"
source: hosted
version: "0.4.0+1"
connectivity_macos:
version: "6.1.4"
connectivity_plus_platform_interface:
dependency: transitive
description:
name: connectivity_macos
sha256: "51ae08d5162eca9669b9d8951ed83ce19c5355a81149f94e4dee2740beb93628"
url: "https://pub.dev"
source: hosted
version: "0.2.1+2"
connectivity_platform_interface:
dependency: transitive
description:
name: connectivity_platform_interface
sha256: "2d82e942df9d49f29a24bb07fb5ce085d4a53e47818c62364d2b6deb9e0d7a8e"
name: connectivity_plus_platform_interface
sha256: "42657c1715d48b167930d5f34d00222ac100475f73d10162ddf43e714932f204"
url: "https://pub.dev"
source: hosted
version: "2.0.1"
@ -329,6 +313,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.0.8"
dart_jsonwebtoken:
dependency: "direct main"
description:
name: dart_jsonwebtoken
sha256: "00a0812d2aeaeb0d30bcbc4dd3cee57971dbc0ab2216adf4f0247f37793f15ef"
url: "https://pub.dev"
source: hosted
version: "2.17.0"
dart_style:
dependency: transitive
description:
@ -345,6 +337,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "2.1.0"
dbus:
dependency: transitive
description:
name: dbus
sha256: "79e0c23480ff85dc68de79e2cd6334add97e48f7f4865d17686dd6ea81a47e8c"
url: "https://pub.dev"
source: hosted
version: "0.7.11"
dropdown_search:
dependency: "direct main"
description:
@ -353,6 +353,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "5.0.6"
ed25519_edwards:
dependency: transitive
description:
name: ed25519_edwards
sha256: "6ce0112d131327ec6d42beede1e5dfd526069b18ad45dcf654f15074ad9276cd"
url: "https://pub.dev"
source: hosted
version: "0.3.1"
equatable:
dependency: transitive
description:
@ -369,6 +377,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "3.1.0"
events_emitter:
dependency: transitive
description:
name: events_emitter
sha256: a075477bdf9c8c0c31bb7c7b7bdd357b4486c34f30163119f96de4e7f54abeff
url: "https://pub.dev"
source: hosted
version: "0.5.2"
expandable:
dependency: "direct main"
description:
@ -522,10 +538,10 @@ packages:
dependency: transitive
description:
name: flutter_cache_manager
sha256: "8207f27539deb83732fdda03e259349046a39a4c767269285f449ade355d54ba"
sha256: "400b6592f16a4409a7f2bb929a9a7e38c72cceb8ffb99ee57bbf2cb2cecf8386"
url: "https://pub.dev"
source: hosted
version: "3.3.1"
version: "3.4.1"
flutter_colorpicker:
dependency: "direct main"
description:
@ -550,6 +566,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "0.4.0"
flutter_hooks:
dependency: transitive
description:
name: flutter_hooks
sha256: cde36b12f7188c85286fba9b38cc5a902e7279f36dd676967106c041dc9dde70
url: "https://pub.dev"
source: hosted
version: "0.20.5"
flutter_html:
dependency: "direct main"
description:
@ -684,13 +708,13 @@ packages:
source: hosted
version: "0.7.2"
flutter_plugin_android_lifecycle:
dependency: transitive
dependency: "direct overridden"
description:
name: flutter_plugin_android_lifecycle
sha256: "8cf40eebf5dec866a6d1956ad7b4f7016e6c0cc69847ab946833b7d43743809f"
sha256: "5a1e6fb2c0561958d7e4c33574674bda7b77caaca7a33b758876956f2902eea3"
url: "https://pub.dev"
source: hosted
version: "2.0.19"
version: "2.0.27"
flutter_staggered_grid_view:
dependency: "direct main"
description:
@ -725,14 +749,22 @@ packages:
description: flutter
source: sdk
version: "0.0.0"
flutter_zoom_videosdk:
dependency: "direct main"
description:
name: flutter_zoom_videosdk
sha256: bb800c733c3a0a31909b2834922e75e089108980154ba1e60ef881c0e21b8802
url: "https://pub.dev"
source: hosted
version: "1.12.10"
fluttertoast:
dependency: "direct main"
description:
name: fluttertoast
sha256: "81b68579e23fcbcada2db3d50302813d2371664afe6165bc78148050ab94bf66"
sha256: "25e51620424d92d3db3832464774a6143b5053f15e382d8ffbfd40b6e795dcf1"
url: "https://pub.dev"
source: hosted
version: "8.2.5"
version: "8.2.12"
font_awesome_flutter:
dependency: "direct main"
description:
@ -913,18 +945,18 @@ packages:
dependency: transitive
description:
name: leak_tracker
sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05"
sha256: "7bb2830ebd849694d1ec25bf1f44582d6ac531a57a365a803a6034ff751d2d06"
url: "https://pub.dev"
source: hosted
version: "10.0.5"
version: "10.0.7"
leak_tracker_flutter_testing:
dependency: transitive
description:
name: leak_tracker_flutter_testing
sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806"
sha256: "9491a714cca3667b60b5c420da8217e6de0d1ba7a5ec322fab01758f6998f379"
url: "https://pub.dev"
source: hosted
version: "3.0.5"
version: "3.0.8"
leak_tracker_testing:
dependency: transitive
description:
@ -958,21 +990,21 @@ packages:
source: hosted
version: "2.1.8"
local_auth_android:
dependency: transitive
dependency: "direct main"
description:
name: local_auth_android
sha256: e0e5b1ea247c5a0951c13a7ee13dc1beae69750e6a2e1910d1ed6a3cd4d56943
sha256: "63ad7ca6396290626dc0cb34725a939e4cfe965d80d36112f08d49cf13a8136e"
url: "https://pub.dev"
source: hosted
version: "1.0.38"
version: "1.0.49"
local_auth_ios:
dependency: transitive
description:
name: local_auth_ios
sha256: eb283b530029b334698918f1e282d4483737cbca972ff21b9193be3d6de8e2b8
sha256: "6dde47dc852bc0c8343cb58e66a46efb16b62eddf389ce103d4dacb0c6c40c71"
url: "https://pub.dev"
source: hosted
version: "1.1.6"
version: "1.1.7"
local_auth_platform_interface:
dependency: transitive
description:
@ -1009,10 +1041,10 @@ packages:
dependency: "direct main"
description:
name: maps_launcher
sha256: "57ba3c31db96e30f58c23fcb22a1fac6accc5683535b2cf344c534bbb9f8f910"
sha256: dac4c609720211fa6336b5903d917fe45e545c6b5665978efc3db2a3f436b1ae
url: "https://pub.dev"
source: hosted
version: "2.2.1"
version: "3.0.0+1"
matcher:
dependency: transitive
description:
@ -1053,6 +1085,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.0.0"
nm:
dependency: transitive
description:
name: nm
sha256: "2c9aae4127bdc8993206464fcc063611e0e36e72018696cd9631023a31b24254"
url: "https://pub.dev"
source: hosted
version: "0.5.0"
numberpicker:
dependency: "direct main"
description:
@ -1261,6 +1301,14 @@ packages:
url: "https://pub.dev"
source: hosted
version: "0.10.2+1"
pointycastle:
dependency: transitive
description:
name: pointycastle
sha256: "4be0097fcf3fd3e8449e53730c631200ebc7b88016acecab2b0da2f0149222fe"
url: "https://pub.dev"
source: hosted
version: "3.9.1"
pool:
dependency: transitive
description:
@ -1329,26 +1377,26 @@ packages:
dependency: "direct main"
description:
name: shared_preferences
sha256: d3bbe5553a986e83980916ded2f0b435ef2e1893dfaa29d5a7a790d0eca12180
sha256: "6e8bf70b7fef813df4e9a36f658ac46d107db4b4cfe1048b477d4e453a8159f5"
url: "https://pub.dev"
source: hosted
version: "2.2.3"
version: "2.5.3"
shared_preferences_android:
dependency: transitive
description:
name: shared_preferences_android
sha256: "1ee8bf911094a1b592de7ab29add6f826a7331fb854273d55918693d5364a1f2"
sha256: "20cbd561f743a342c76c151d6ddb93a9ce6005751e7aa458baad3858bfbfb6ac"
url: "https://pub.dev"
source: hosted
version: "2.2.2"
version: "2.4.10"
shared_preferences_foundation:
dependency: transitive
description:
name: shared_preferences_foundation
sha256: "7708d83064f38060c7b39db12aefe449cb8cdc031d6062280087bc4cdb988f5c"
sha256: "6a52cfcdaeac77cad8c97b539ff688ccfc458c007b4db12be584fbe5c0e49e03"
url: "https://pub.dev"
source: hosted
version: "2.3.5"
version: "2.5.4"
shared_preferences_linux:
dependency: transitive
description:
@ -1401,7 +1449,7 @@ packages:
dependency: transitive
description: flutter
source: sdk
version: "0.0.99"
version: "0.0.0"
source_maps:
dependency: transitive
description:
@ -1422,26 +1470,18 @@ packages:
dependency: "direct main"
description:
name: speech_to_text
sha256: "57fef1d41bdebe298e84842c89bb4ac91f31cdbec7830c8cb1fc6b91d03abd42"
sha256: "130fde359c23a4da6c2a4f032eab43e4c2b57c9818fe93694c091dfbdca6ae70"
url: "https://pub.dev"
source: hosted
version: "6.6.0"
speech_to_text_macos:
dependency: transitive
description:
name: speech_to_text_macos
sha256: e685750f7542fcaa087a5396ee471e727ec648bf681f4da83c84d086322173f6
url: "https://pub.dev"
source: hosted
version: "1.1.0"
version: "7.1.0"
speech_to_text_platform_interface:
dependency: transitive
description:
name: speech_to_text_platform_interface
sha256: a0df1a907091ea09880077dc25aae02af9f79811264e6e97ddb08639b7f771c2
sha256: a1935847704e41ee468aad83181ddd2423d0833abe55d769c59afca07adb5114
url: "https://pub.dev"
source: hosted
version: "2.2.0"
version: "2.3.0"
sprintf:
dependency: transitive
description:
@ -1454,26 +1494,50 @@ packages:
dependency: transitive
description:
name: sqflite
sha256: a9016f495c927cb90557c909ff26a6d92d9bd54fc42ba92e19d4e79d61e798c6
sha256: "2d7299468485dca85efeeadf5d38986909c5eb0cd71fd3db2c2f000e6c9454bb"
url: "https://pub.dev"
source: hosted
version: "2.3.2"
version: "2.4.1"
sqflite_android:
dependency: transitive
description:
name: sqflite_android
sha256: "78f489aab276260cdd26676d2169446c7ecd3484bbd5fead4ca14f3ed4dd9ee3"
url: "https://pub.dev"
source: hosted
version: "2.4.0"
sqflite_common:
dependency: transitive
description:
name: sqflite_common
sha256: "28d8c66baee4968519fb8bd6cdbedad982d6e53359091f0b74544a9f32ec72d5"
sha256: "761b9740ecbd4d3e66b8916d784e581861fd3c3553eda85e167bc49fdb68f709"
url: "https://pub.dev"
source: hosted
version: "2.5.3"
version: "2.5.4+6"
sqflite_darwin:
dependency: transitive
description:
name: sqflite_darwin
sha256: "22adfd9a2c7d634041e96d6241e6e1c8138ca6817018afc5d443fef91dcefa9c"
url: "https://pub.dev"
source: hosted
version: "2.4.1+1"
sqflite_platform_interface:
dependency: transitive
description:
name: sqflite_platform_interface
sha256: "8dd4515c7bdcae0a785b0062859336de775e8c65db81ae33dd5445f35be61920"
url: "https://pub.dev"
source: hosted
version: "2.4.0"
stack_trace:
dependency: transitive
description:
name: stack_trace
sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b"
sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377"
url: "https://pub.dev"
source: hosted
version: "1.11.1"
version: "1.12.0"
sticky_headers:
dependency: "direct main"
description:
@ -1502,10 +1566,10 @@ packages:
dependency: transitive
description:
name: string_scanner
sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde"
sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3"
url: "https://pub.dev"
source: hosted
version: "1.2.0"
version: "1.3.0"
synchronized:
dependency: transitive
description:
@ -1526,10 +1590,10 @@ packages:
dependency: transitive
description:
name: test_api
sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb"
sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c"
url: "https://pub.dev"
source: hosted
version: "0.7.2"
version: "0.7.3"
timing:
dependency: transitive
description:
@ -1566,10 +1630,10 @@ packages:
dependency: "direct main"
description:
name: url_launcher
sha256: "21b704ce5fa560ea9f3b525b43601c678728ba46725bab9b01187b4831377ed3"
sha256: "9d06212b1362abc2f0f0d78e6f09f726608c74e3b9462e8368bb03314aa8d603"
url: "https://pub.dev"
source: hosted
version: "6.3.0"
version: "6.3.1"
url_launcher_android:
dependency: transitive
description:
@ -1579,13 +1643,13 @@ packages:
source: hosted
version: "6.3.2"
url_launcher_ios:
dependency: transitive
dependency: "direct main"
description:
name: url_launcher_ios
sha256: "75bb6fe3f60070407704282a2d295630cab232991eb52542b18347a8a941df03"
sha256: "7f2022359d4c099eea7df3fdf739f7d3d3b9faf3166fb1dd390775176e0b76cb"
url: "https://pub.dev"
source: hosted
version: "6.2.4"
version: "6.3.3"
url_launcher_linux:
dependency: transitive
description:
@ -1678,10 +1742,10 @@ packages:
dependency: transitive
description:
name: vm_service
sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d"
sha256: f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b
url: "https://pub.dev"
source: hosted
version: "14.2.5"
version: "14.3.0"
watcher:
dependency: transitive
description:
@ -1739,5 +1803,5 @@ packages:
source: hosted
version: "3.1.2"
sdks:
dart: ">=3.5.0 <3.6.0"
flutter: ">=3.24.0"
dart: ">=3.6.0 <3.8.0-z"
flutter: ">=3.27.0"

@ -30,16 +30,18 @@ dependencies:
flutter_device_type: ^0.4.0
http: ^1.1.2
provider: ^6.1.1
shared_preferences: ^2.2.2
shared_preferences: ^2.5.3
# imei_plugin: ^1.2.0
# flutter_flexible_toast: ^0.1.4
fluttertoast: ^8.2.4
fluttertoast: ^8.2.12
local_auth: 2.1.8
local_auth_android: ^1.0.48
http_interceptor: any
connectivity: ^3.0.6
maps_launcher: ^2.2.0
url_launcher: ^6.2.1
# connectivity: ^3.0.6
connectivity_plus: ^6.1.4
maps_launcher: ^3.0.0+1
url_launcher: ^6.3.1
url_launcher_ios: ^6.3.2
charts_flutter: ^0.12.0
#flutter_charts: ^0.5.2
@ -55,7 +57,7 @@ dependencies:
expandable: ^5.0.1
# Qr code Scanner
barcode_scan2: ^4.3.0
barcode_scan2: ^4.5.1
# permissions
permission_handler: ^11.1.0
# device_info: ^2.0.2
@ -102,7 +104,7 @@ dependencies:
# speech_to_text:
# path: speech_to_text
speech_to_text: ^6.4.1
speech_to_text: ^7.1.0
quiver: ^3.2.1
flutter_colorpicker: ^1.0.3
@ -114,7 +116,7 @@ dependencies:
jhijri: ^1.0.0
#Network Image
cached_network_image: ^3.3.0
cached_network_image: ^3.4.1
# Badges
@ -140,6 +142,7 @@ dependency_overrides:
flutter_localizations:
sdk: flutter
intl: ^0.18.1
flutter_plugin_android_lifecycle: 2.0.27
#hijri_picker: ^3.0.0

@ -6,6 +6,7 @@
#include "generated_plugin_registrant.h"
#include <connectivity_plus/connectivity_plus_windows_plugin.h>
#include <firebase_core/firebase_core_plugin_c_api.h>
#include <flutter_inappwebview_windows/flutter_inappwebview_windows_plugin_c_api.h>
#include <local_auth_windows/local_auth_plugin.h>
@ -14,6 +15,8 @@
#include <url_launcher_windows/url_launcher_windows.h>
void RegisterPlugins(flutter::PluginRegistry* registry) {
ConnectivityPlusWindowsPluginRegisterWithRegistrar(
registry->GetRegistrarForPlugin("ConnectivityPlusWindowsPlugin"));
FirebaseCorePluginCApiRegisterWithRegistrar(
registry->GetRegistrarForPlugin("FirebaseCorePluginCApi"));
FlutterInappwebviewWindowsPluginCApiRegisterWithRegistrar(

@ -3,6 +3,7 @@
#
list(APPEND FLUTTER_PLUGIN_LIST
connectivity_plus
firebase_core
flutter_inappwebview_windows
local_auth_windows

Loading…
Cancel
Save