Update: 2026-07-27 17:18:25
This commit is contained in:
@@ -34,7 +34,7 @@ if (flutterVersionName == null) {
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "com.siro.intaleq_driver"
|
||||
namespace = "com.intaleq_driver"
|
||||
compileSdk = 36
|
||||
ndkVersion "29.0.14033849"
|
||||
|
||||
@@ -63,7 +63,7 @@ android {
|
||||
}
|
||||
|
||||
defaultConfig {
|
||||
applicationId = "com.siro.intaleq_driver"
|
||||
applicationId = "com.intaleq_driver"
|
||||
minSdkVersion = 30
|
||||
targetSdk = 36
|
||||
versionCode = flutterVersionCode.toInteger()
|
||||
|
||||
+5
-5
@@ -32,11 +32,11 @@
|
||||
|
||||
# Android Auto Car App Library
|
||||
-keep class androidx.car.app.** { *; }
|
||||
-keep class com.siro.intaleq_driver.MyCarAppService { *; }
|
||||
-keep class com.siro.intaleq_driver.MyCarSession { *; }
|
||||
-keep class com.siro.intaleq_driver.MyCarScreen { *; }
|
||||
-keep class com.siro.intaleq_driver.CarNavigationData { *; }
|
||||
-keep class com.siro.intaleq_driver.MapPresentation { *; }
|
||||
-keep class com.intaleq_driver.MyCarAppService { *; }
|
||||
-keep class com.intaleq_driver.MyCarSession { *; }
|
||||
-keep class com.intaleq_driver.MyCarScreen { *; }
|
||||
-keep class com.intaleq_driver.CarNavigationData { *; }
|
||||
-keep class com.intaleq_driver.MapPresentation { *; }
|
||||
|
||||
# MapLibre Native SDK
|
||||
-keep class org.maplibre.android.** { *; }
|
||||
|
||||
@@ -129,7 +129,7 @@
|
||||
android:exported="true"
|
||||
/>
|
||||
<service
|
||||
android:name="com.siro.intaleq_driver.trip_overlay_plugin.TripOverlayService"
|
||||
android:name="com.intaleq_driver.trip_overlay_plugin.TripOverlayService"
|
||||
android:exported="false"
|
||||
android:foregroundServiceType="specialUse" />
|
||||
<service android:name=".MyFirebaseMessagingService" android:exported="false" />
|
||||
@@ -168,7 +168,7 @@
|
||||
android:exported="true" android:permission="com.google.android.c2dm.permission.SEND">
|
||||
<intent-filter>
|
||||
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
|
||||
<category android:name="com.siro.intaleq_driver" />
|
||||
<category android:name="com.intaleq_driver" />
|
||||
</intent-filter>
|
||||
</receiver>
|
||||
<!-- خدمة الفقاعة الخاصة بك -->
|
||||
|
||||
@@ -158,7 +158,7 @@ bool checkLoadedModules()
|
||||
//}
|
||||
|
||||
extern "C" JNIEXPORT jboolean JNICALL
|
||||
Java_com_siro_siro_1driver_RootDetection_isNativeRooted(JNIEnv *env, jobject /* this */)
|
||||
Java_com_intaleq_1driver_RootDetection_isNativeRooted(JNIEnv *env, jobject /* this */)
|
||||
{
|
||||
|
||||
if (isRooted())
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.siro.intaleq_driver
|
||||
package com.intaleq_driver
|
||||
|
||||
import android.os.Handler
|
||||
import android.os.Looper
|
||||
+4
-4
@@ -1,4 +1,4 @@
|
||||
package com.siro.intaleq_driver
|
||||
package com.intaleq_driver
|
||||
|
||||
import android.app.AlertDialog
|
||||
import android.content.Intent
|
||||
@@ -18,8 +18,8 @@ import java.util.Timer
|
||||
import kotlin.concurrent.schedule
|
||||
|
||||
class MainActivity : FlutterFragmentActivity() {
|
||||
private val SECURITY_CHANNEL = "com.siro.intaleq_driver/security"
|
||||
private val APP_CONTROL_CHANNEL = "com.siro.intaleq_driver/app_control"
|
||||
private val SECURITY_CHANNEL = "com.intaleq_driver/security"
|
||||
private val APP_CONTROL_CHANNEL = "com.intaleq_driver/app_control"
|
||||
private var appControlChannel: MethodChannel? = null
|
||||
|
||||
override fun configureFlutterEngine(flutterEngine: FlutterEngine) {
|
||||
@@ -63,7 +63,7 @@ class MainActivity : FlutterFragmentActivity() {
|
||||
}
|
||||
|
||||
// ✅ Channel for Android Auto Navigation Updates
|
||||
MethodChannel(flutterEngine.dartExecutor.binaryMessenger, "com.siro.intaleq_driver/car_navigation")
|
||||
MethodChannel(flutterEngine.dartExecutor.binaryMessenger, "com.intaleq_driver/car_navigation")
|
||||
.setMethodCallHandler { call, result ->
|
||||
when (call.method) {
|
||||
"updateNavState" -> {
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.siro.intaleq_driver
|
||||
package com.intaleq_driver
|
||||
|
||||
import android.app.Presentation
|
||||
import android.content.Context
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
package com.siro.intaleq_driver
|
||||
package com.intaleq_driver
|
||||
|
||||
import android.app.Application
|
||||
import android.content.Intent
|
||||
@@ -24,7 +24,7 @@ class MyApplication : Application() {
|
||||
|
||||
MethodChannel(
|
||||
flutterEngine.dartExecutor.binaryMessenger,
|
||||
"com.siro.intaleq_driver/app_lifecycle"
|
||||
"com.intaleq_driver/app_lifecycle"
|
||||
)
|
||||
.setMethodCallHandler { call, result ->
|
||||
if (call.method == "bringAppToForeground") {
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.siro.intaleq_driver
|
||||
package com.intaleq_driver
|
||||
|
||||
import android.content.pm.ApplicationInfo
|
||||
import androidx.car.app.CarAppService
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.siro.intaleq_driver
|
||||
package com.intaleq_driver
|
||||
|
||||
import androidx.car.app.CarContext
|
||||
import androidx.car.app.Screen
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.siro.intaleq_driver
|
||||
package com.intaleq_driver
|
||||
|
||||
import android.content.Intent
|
||||
import android.hardware.display.DisplayManager
|
||||
Regular → Executable
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.siro.intaleq_rider
|
||||
package com.intaleq_driver
|
||||
|
||||
object RootDetection {
|
||||
init {
|
||||
@@ -204,11 +204,13 @@ class AppLink {
|
||||
static String get getRides => "$rideServer/ride/rides/get.php";
|
||||
static String get getPlacesSyria => "$rideServer/ride/places_syria/get.php";
|
||||
static String get getMishwari => "$rideServer/ride/mishwari/get.php";
|
||||
static String get getMishwariDriver => "$rideServer/ride/mishwari/getDriver.php";
|
||||
static String get getMishwariDriver =>
|
||||
"$rideServer/ride/mishwari/getDriver.php";
|
||||
static String get sendChatMessage => "$server/ride/chat/send_message.php";
|
||||
static String get getTripCountByCaptain =>
|
||||
"$rideServer/ride/rides/getTripCountByCaptain.php";
|
||||
static String get getRideOrderID => "$rideServer/ride/rides/getRideOrderID.php";
|
||||
static String get getRideOrderID =>
|
||||
"$rideServer/ride/rides/getRideOrderID.php";
|
||||
static String get getRideStatus => "$rideServer/ride/rides/getRideStatus.php";
|
||||
static String get getOverLayStatus => "$ride/overLay/get.php";
|
||||
static String get getArgumentAfterAppliedFromBackground =>
|
||||
@@ -377,7 +379,7 @@ class AppLink {
|
||||
static String get uploadImage1 => "$server/uploadImage1.php";
|
||||
static String get uploadImagePortrate => "$server/uploadImagePortrate.php";
|
||||
static String get uploadSyrianDocs =>
|
||||
"$syria/auth/driver/uploadDriverDocs.php";
|
||||
"$server/auth/driver/uploadDriverDocs.php";
|
||||
static String get uploadImageType => "$server/uploadImageType.php";
|
||||
//=============egypt documents ==============
|
||||
static String get uploadEgyptidFront =>
|
||||
@@ -490,8 +492,7 @@ class AppLink {
|
||||
static String get verifyOtpDriver => "$server/auth/otp/verify.php";
|
||||
static String get verifyEmailCaptin => "$authCaptin/verifyEmail.php";
|
||||
static String get removeUser => "$authCaptin/removeAccount.php";
|
||||
static String get deletecaptainAccounr =>
|
||||
"$authCaptin/deleteAccount.php";
|
||||
static String get deletecaptainAccounr => "$authCaptin/deleteAccount.php";
|
||||
static String get updateAccountBank => "$authCaptin/updateAccountBank.php";
|
||||
static String get getAccount => "$authCaptin/getAccount.php";
|
||||
static String get uploadImageToAi => "$auth/document_syria/ai_document.php";
|
||||
|
||||
@@ -3,7 +3,7 @@ import 'package:flutter/services.dart';
|
||||
class CarPlatformBridge {
|
||||
CarPlatformBridge._();
|
||||
|
||||
static const _channel = MethodChannel('com.siro.intaleq_driver/car_navigation');
|
||||
static const _channel = MethodChannel('com.intaleq_driver/car_navigation');
|
||||
|
||||
static bool _isInitialized = false;
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
|
||||
class AppLifecycleManager {
|
||||
static const platform = MethodChannel('com.sefer_driver/app_lifecycle');
|
||||
static const platform = MethodChannel('com.intaleq_driver/app_lifecycle');
|
||||
|
||||
static Future<void> bringAppToForeground() async {
|
||||
try {
|
||||
|
||||
@@ -7,7 +7,7 @@ import '../../main.dart';
|
||||
|
||||
class SecurityChecks {
|
||||
static const platform = MethodChannel(
|
||||
'com.siro.intaleq_driver/security'); // Choose a unique channel name
|
||||
'com.intaleq_driver/security'); // Choose a unique channel name
|
||||
|
||||
static Future<bool> isDeviceCompromised() async {
|
||||
try {
|
||||
|
||||
+12
@@ -0,0 +1,12 @@
|
||||
// This is a generated file; do not edit or check into version control.
|
||||
FLUTTER_ROOT=/Users/hamzaaleghwairyeen/development/flutter
|
||||
FLUTTER_APPLICATION_PATH=/Users/hamzaaleghwairyeen/development/App/IntaleqApp/intaleq_driver/packages/get/example
|
||||
FLUTTER_FRAMEWORK_SWIFT_PACKAGE_PATH=/Users/hamzaaleghwairyeen/development/App/IntaleqApp/intaleq_driver/packages/get/example/macos/Flutter/ephemeral/Packages/.packages/FlutterFramework
|
||||
COCOAPODS_PARALLEL_CODE_SIGN=true
|
||||
FLUTTER_BUILD_DIR=build
|
||||
FLUTTER_BUILD_NAME=1.0.0
|
||||
FLUTTER_BUILD_NUMBER=1
|
||||
DART_OBFUSCATION=false
|
||||
TRACK_WIDGET_CREATION=true
|
||||
TREE_SHAKE_ICONS=false
|
||||
PACKAGE_CONFIG=.dart_tool/package_config.json
|
||||
Executable
+13
@@ -0,0 +1,13 @@
|
||||
#!/bin/sh
|
||||
# This is a generated file; do not edit or check into version control.
|
||||
export "FLUTTER_ROOT=/Users/hamzaaleghwairyeen/development/flutter"
|
||||
export "FLUTTER_APPLICATION_PATH=/Users/hamzaaleghwairyeen/development/App/IntaleqApp/intaleq_driver/packages/get/example"
|
||||
export "FLUTTER_FRAMEWORK_SWIFT_PACKAGE_PATH=/Users/hamzaaleghwairyeen/development/App/IntaleqApp/intaleq_driver/packages/get/example/macos/Flutter/ephemeral/Packages/.packages/FlutterFramework"
|
||||
export "COCOAPODS_PARALLEL_CODE_SIGN=true"
|
||||
export "FLUTTER_BUILD_DIR=build"
|
||||
export "FLUTTER_BUILD_NAME=1.0.0"
|
||||
export "FLUTTER_BUILD_NUMBER=1"
|
||||
export "DART_OBFUSCATION=false"
|
||||
export "TRACK_WIDGET_CREATION=true"
|
||||
export "TREE_SHAKE_ICONS=false"
|
||||
export "PACKAGE_CONFIG=.dart_tool/package_config.json"
|
||||
@@ -3,13 +3,17 @@ import 'dart:math';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:get_demo/pages/home/domain/adapters/repository_adapter.dart';
|
||||
import 'package:get_demo/pages/home/domain/entity/cases_model.dart';
|
||||
import 'package:get_demo/pages/home/presentation/controllers/home_controller.dart';
|
||||
// import 'package:get_demo/routes/app_pages.dart';
|
||||
// import 'package:get_test/get_test.dart';
|
||||
import 'package:matcher/matcher.dart' as m;
|
||||
|
||||
import '../lib/pages/home/domain/adapters/repository_adapter.dart'
|
||||
show IHomeRepository;
|
||||
import '../lib/pages/home/domain/entity/cases_model.dart'
|
||||
show CasesModel, Global;
|
||||
import '../lib/pages/home/presentation/controllers/home_controller.dart'
|
||||
show HomeController;
|
||||
|
||||
class MockRepository implements IHomeRepository {
|
||||
@override
|
||||
Future<CasesModel> getCases() async {
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
// This is a generated file; do not edit or check into version control.
|
||||
FLUTTER_ROOT=/Users/hamzaaleghwairyeen/development/flutter
|
||||
FLUTTER_APPLICATION_PATH=/Users/hamzaaleghwairyeen/development/App/IntaleqApp/intaleq_driver/packages/get/example_nav2
|
||||
FLUTTER_FRAMEWORK_SWIFT_PACKAGE_PATH=/Users/hamzaaleghwairyeen/development/App/IntaleqApp/intaleq_driver/packages/get/example_nav2/ios/Flutter/ephemeral/Packages/.packages/FlutterFramework
|
||||
COCOAPODS_PARALLEL_CODE_SIGN=true
|
||||
FLUTTER_TARGET=lib/main.dart
|
||||
FLUTTER_BUILD_DIR=build
|
||||
FLUTTER_BUILD_NAME=1.0.0
|
||||
FLUTTER_BUILD_NUMBER=1
|
||||
EXCLUDED_ARCHS[sdk=iphonesimulator*]=i386
|
||||
EXCLUDED_ARCHS[sdk=iphoneos*]=armv7
|
||||
DART_OBFUSCATION=false
|
||||
TRACK_WIDGET_CREATION=true
|
||||
TREE_SHAKE_ICONS=false
|
||||
PACKAGE_CONFIG=.dart_tool/package_config.json
|
||||
@@ -0,0 +1,32 @@
|
||||
#
|
||||
# Generated file, do not edit.
|
||||
#
|
||||
|
||||
import lldb
|
||||
|
||||
def handle_new_rx_page(frame: lldb.SBFrame, bp_loc, extra_args, intern_dict):
|
||||
"""Intercept NOTIFY_DEBUGGER_ABOUT_RX_PAGES and touch the pages."""
|
||||
base = frame.register["x0"].GetValueAsAddress()
|
||||
page_len = frame.register["x1"].GetValueAsUnsigned()
|
||||
|
||||
# Note: NOTIFY_DEBUGGER_ABOUT_RX_PAGES will check contents of the
|
||||
# first page to see if handled it correctly. This makes diagnosing
|
||||
# misconfiguration (e.g. missing breakpoint) easier.
|
||||
data = bytearray(page_len)
|
||||
data[0:8] = b'IHELPED!'
|
||||
|
||||
error = lldb.SBError()
|
||||
frame.GetThread().GetProcess().WriteMemory(base, data, error)
|
||||
if not error.Success():
|
||||
print(f'Failed to write into {base}[+{page_len}]', error)
|
||||
return
|
||||
|
||||
def __lldb_init_module(debugger: lldb.SBDebugger, _):
|
||||
target = debugger.GetDummyTarget()
|
||||
# Caveat: must use BreakpointCreateByRegEx here and not
|
||||
# BreakpointCreateByName. For some reasons callback function does not
|
||||
# get carried over from dummy target for the later.
|
||||
bp = target.BreakpointCreateByRegex("^NOTIFY_DEBUGGER_ABOUT_RX_PAGES$")
|
||||
bp.SetScriptCallbackFunction('{}.handle_new_rx_page'.format(__name__))
|
||||
bp.SetAutoContinue(True)
|
||||
print("-- LLDB integration loaded --")
|
||||
@@ -0,0 +1,5 @@
|
||||
#
|
||||
# Generated file, do not edit.
|
||||
#
|
||||
|
||||
command script import --relative-to-command-file flutter_lldb_helper.py
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
#!/bin/sh
|
||||
# This is a generated file; do not edit or check into version control.
|
||||
export "FLUTTER_ROOT=/Users/hamzaaleghwairyeen/development/flutter"
|
||||
export "FLUTTER_APPLICATION_PATH=/Users/hamzaaleghwairyeen/development/App/IntaleqApp/intaleq_driver/packages/get/example_nav2"
|
||||
export "FLUTTER_FRAMEWORK_SWIFT_PACKAGE_PATH=/Users/hamzaaleghwairyeen/development/App/IntaleqApp/intaleq_driver/packages/get/example_nav2/ios/Flutter/ephemeral/Packages/.packages/FlutterFramework"
|
||||
export "COCOAPODS_PARALLEL_CODE_SIGN=true"
|
||||
export "FLUTTER_TARGET=lib/main.dart"
|
||||
export "FLUTTER_BUILD_DIR=build"
|
||||
export "FLUTTER_BUILD_NAME=1.0.0"
|
||||
export "FLUTTER_BUILD_NUMBER=1"
|
||||
export "DART_OBFUSCATION=false"
|
||||
export "TRACK_WIDGET_CREATION=true"
|
||||
export "TREE_SHAKE_ICONS=false"
|
||||
export "PACKAGE_CONFIG=.dart_tool/package_config.json"
|
||||
@@ -0,0 +1,15 @@
|
||||
// This is a generated file; do not edit or check into version control.
|
||||
FLUTTER_ROOT=/Users/hamzaaleghwairyeen/development/flutter
|
||||
FLUTTER_APPLICATION_PATH=/Users/hamzaaleghwairyeen/development/App/IntaleqApp/intaleq_driver/packages/get_storage/example
|
||||
FLUTTER_FRAMEWORK_SWIFT_PACKAGE_PATH=/Users/hamzaaleghwairyeen/development/App/IntaleqApp/intaleq_driver/packages/get_storage/example/ios/Flutter/ephemeral/Packages/.packages/FlutterFramework
|
||||
COCOAPODS_PARALLEL_CODE_SIGN=true
|
||||
FLUTTER_TARGET=lib/main.dart
|
||||
FLUTTER_BUILD_DIR=build
|
||||
FLUTTER_BUILD_NAME=1.0.0
|
||||
FLUTTER_BUILD_NUMBER=1
|
||||
EXCLUDED_ARCHS[sdk=iphonesimulator*]=i386
|
||||
EXCLUDED_ARCHS[sdk=iphoneos*]=armv7
|
||||
DART_OBFUSCATION=false
|
||||
TRACK_WIDGET_CREATION=true
|
||||
TREE_SHAKE_ICONS=false
|
||||
PACKAGE_CONFIG=.dart_tool/package_config.json
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
#
|
||||
# Generated file, do not edit.
|
||||
#
|
||||
|
||||
import lldb
|
||||
|
||||
def handle_new_rx_page(frame: lldb.SBFrame, bp_loc, extra_args, intern_dict):
|
||||
"""Intercept NOTIFY_DEBUGGER_ABOUT_RX_PAGES and touch the pages."""
|
||||
base = frame.register["x0"].GetValueAsAddress()
|
||||
page_len = frame.register["x1"].GetValueAsUnsigned()
|
||||
|
||||
# Note: NOTIFY_DEBUGGER_ABOUT_RX_PAGES will check contents of the
|
||||
# first page to see if handled it correctly. This makes diagnosing
|
||||
# misconfiguration (e.g. missing breakpoint) easier.
|
||||
data = bytearray(page_len)
|
||||
data[0:8] = b'IHELPED!'
|
||||
|
||||
error = lldb.SBError()
|
||||
frame.GetThread().GetProcess().WriteMemory(base, data, error)
|
||||
if not error.Success():
|
||||
print(f'Failed to write into {base}[+{page_len}]', error)
|
||||
return
|
||||
|
||||
def __lldb_init_module(debugger: lldb.SBDebugger, _):
|
||||
target = debugger.GetDummyTarget()
|
||||
# Caveat: must use BreakpointCreateByRegEx here and not
|
||||
# BreakpointCreateByName. For some reasons callback function does not
|
||||
# get carried over from dummy target for the later.
|
||||
bp = target.BreakpointCreateByRegex("^NOTIFY_DEBUGGER_ABOUT_RX_PAGES$")
|
||||
bp.SetScriptCallbackFunction('{}.handle_new_rx_page'.format(__name__))
|
||||
bp.SetAutoContinue(True)
|
||||
print("-- LLDB integration loaded --")
|
||||
@@ -0,0 +1,5 @@
|
||||
#
|
||||
# Generated file, do not edit.
|
||||
#
|
||||
|
||||
command script import --relative-to-command-file flutter_lldb_helper.py
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
#!/bin/sh
|
||||
# This is a generated file; do not edit or check into version control.
|
||||
export "FLUTTER_ROOT=/Users/hamzaaleghwairyeen/development/flutter"
|
||||
export "FLUTTER_APPLICATION_PATH=/Users/hamzaaleghwairyeen/development/App/IntaleqApp/intaleq_driver/packages/get_storage/example"
|
||||
export "FLUTTER_FRAMEWORK_SWIFT_PACKAGE_PATH=/Users/hamzaaleghwairyeen/development/App/IntaleqApp/intaleq_driver/packages/get_storage/example/ios/Flutter/ephemeral/Packages/.packages/FlutterFramework"
|
||||
export "COCOAPODS_PARALLEL_CODE_SIGN=true"
|
||||
export "FLUTTER_TARGET=lib/main.dart"
|
||||
export "FLUTTER_BUILD_DIR=build"
|
||||
export "FLUTTER_BUILD_NAME=1.0.0"
|
||||
export "FLUTTER_BUILD_NUMBER=1"
|
||||
export "DART_OBFUSCATION=false"
|
||||
export "TRACK_WIDGET_CREATION=true"
|
||||
export "TREE_SHAKE_ICONS=false"
|
||||
export "PACKAGE_CONFIG=.dart_tool/package_config.json"
|
||||
+1
@@ -0,0 +1 @@
|
||||
/Users/hamzaaleghwairyeen/.pub-cache/hosted/pub.dev/jni-1.0.0/
|
||||
+1
@@ -0,0 +1 @@
|
||||
/Users/hamzaaleghwairyeen/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.1/
|
||||
@@ -34,7 +34,7 @@ if (flutterVersionName == null) {
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "com.siro.intaleq_rider"
|
||||
namespace = "com.Intaleq.intaleq"
|
||||
compileSdk = 36
|
||||
ndkVersion "29.0.14033849"
|
||||
|
||||
@@ -62,7 +62,7 @@ android {
|
||||
|
||||
defaultConfig {
|
||||
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
||||
applicationId = "com.siro.rider"
|
||||
applicationId = "com.Intaleq.intaleq"
|
||||
// You can update the following values to match your application needs.
|
||||
// For more information, see: https://flutter.dev/to/review-gradle-config.
|
||||
minSdkVersion = 30
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.siro.intaleq_rider">
|
||||
package="com.Intaleq.intaleq">
|
||||
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
||||
|
||||
@@ -157,7 +157,7 @@ bool checkLoadedModules()
|
||||
//}
|
||||
|
||||
extern "C" JNIEXPORT jboolean JNICALL
|
||||
Java_com_siro_siro_1rider_RootDetection_isNativeRooted(JNIEnv *env, jobject /* this */)
|
||||
Java_com_Intaleq_intaleq_RootDetection_isNativeRooted(JNIEnv *env, jobject /* this */)
|
||||
{
|
||||
|
||||
if (isRooted())
|
||||
|
||||
+4
-4
@@ -1,4 +1,4 @@
|
||||
package com.siro.intaleq_rider
|
||||
package com.Intaleq.intaleq
|
||||
|
||||
import android.app.Notification
|
||||
import android.app.NotificationChannel
|
||||
@@ -32,9 +32,9 @@ import io.flutter.plugin.common.MethodCall
|
||||
class AndroidLiveUpdatePlugin(private val context: Context) {
|
||||
|
||||
companion object {
|
||||
private const val CHANNEL_ID = "siro_live_ride_progress"
|
||||
private const val CHANNEL_NAME = "Siro Live Ride Progress"
|
||||
private const val CHANNEL_DESC = "Live progress updates for your current Siro ride"
|
||||
private const val CHANNEL_ID = "Intaleq_live_ride_progress"
|
||||
private const val CHANNEL_NAME = "Intaleq Live Ride Progress"
|
||||
private const val CHANNEL_DESC = "Live progress updates for your current Intaleq ride"
|
||||
private const val NOTIFICATION_ID = 999
|
||||
|
||||
private const val STATUS_SEARCHING = "searching"
|
||||
+4
-4
@@ -1,4 +1,4 @@
|
||||
package com.siro.intaleq_rider
|
||||
package com.Intaleq.intaleq
|
||||
|
||||
import android.app.AlertDialog
|
||||
import android.app.PictureInPictureParams
|
||||
@@ -21,15 +21,15 @@ import kotlin.concurrent.schedule
|
||||
class MainActivity : FlutterFragmentActivity() {
|
||||
|
||||
// قناة الأمان (كما هي)
|
||||
private val SECURITY_CHANNEL_NAME = "com.siro.intaleq_rider/security"
|
||||
private val SECURITY_CHANNEL_NAME = "com.Intaleq.intaleq/security"
|
||||
private lateinit var securityChannel: MethodChannel
|
||||
|
||||
// قناة PiP الجديدة
|
||||
private val PIP_CHANNEL = "siro/pip"
|
||||
private val PIP_CHANNEL = "Intaleq/pip"
|
||||
private var pipEnabled = false // هل الرحلة نشطة ويجب تفعيل PiP عند الخروج؟
|
||||
|
||||
// قناة Android Live Update (Android 16 Progress Style)
|
||||
private val LIVE_UPDATE_CHANNEL = "siro/android_live_update"
|
||||
private val LIVE_UPDATE_CHANNEL = "Intaleq/android_live_update"
|
||||
private lateinit var liveUpdatePlugin: AndroidLiveUpdatePlugin
|
||||
|
||||
override fun configureFlutterEngine(flutterEngine: FlutterEngine) {
|
||||
Executable → Regular
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.siro.intaleq_driver
|
||||
package com.Intaleq.intaleq
|
||||
|
||||
object RootDetection {
|
||||
init {
|
||||
@@ -8,7 +8,7 @@ import '../../main.dart';
|
||||
|
||||
class SecurityChecks {
|
||||
static const platform = MethodChannel(
|
||||
'com.Siro.siro/security'); // Choose a unique channel name
|
||||
'com.Intaleq.intaleq/security'); // Choose a unique channel name
|
||||
|
||||
static Future<bool> isDeviceCompromised() async {
|
||||
try {
|
||||
|
||||
@@ -10,7 +10,7 @@ class IosLiveActivityService {
|
||||
static void init() {
|
||||
if (Platform.isIOS) {
|
||||
_liveActivitiesPlugin.init(
|
||||
appGroupId: "group.com.Siro.siro",
|
||||
appGroupId: "group.com.Intaleq.intaleq",
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -60,7 +60,7 @@ ${AppLink.inviteRedirectUrl}?code=$driverCouponCode&app=driver
|
||||
Future<void> sharePassengerCode() async {
|
||||
if (couponCode != null) {
|
||||
final String shareText = '''
|
||||
${'Get a discount on your first Siro ride!'.tr}
|
||||
${'Get a discount on your first Intaleq ride!'.tr}
|
||||
${'Use my referral code:'.tr} $couponCode
|
||||
${'Download the Siro app now and enjoy your ride:'.tr}
|
||||
${AppLink.inviteRedirectUrl}?code=$couponCode&app=rider
|
||||
|
||||
@@ -524,7 +524,7 @@ final Map<String, String> ar_eg = {
|
||||
"Get Details of Trip": "تفاصيل المشوار",
|
||||
"Get Direction": "الاتجاهات",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get a discount on your first Siro ride!": "لك خصم على أول مشوار في سيرو!",
|
||||
"Get a discount on your first Intaleq ride!": "لك خصم على أول مشوار في سيرو!",
|
||||
"Get it Now!": "خذها الحين!",
|
||||
"Get to your destination quickly and easily.": "وصل وجهتك بسرعة وسهولة.",
|
||||
"Getting Started": "البداية",
|
||||
|
||||
@@ -523,7 +523,7 @@ final Map<String, String> ar_jo = {
|
||||
"Get Details of Trip": "تفاصيل المشوار",
|
||||
"Get Direction": "الاتجاهات",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get a discount on your first Siro ride!": "احصل على خصم على أول رحلة في سيرو!",
|
||||
"Get a discount on your first Intaleq ride!": "احصل على خصم على أول رحلة في سيرو!",
|
||||
"Get it Now!": "احصل عليها الآن!",
|
||||
"Get to your destination quickly and easily.": "وصل وجهتك بسرعة وسهولة.",
|
||||
"Getting Started": "البداية",
|
||||
|
||||
@@ -524,7 +524,7 @@ final Map<String, String> ar_sy = {
|
||||
"Get Details of Trip": "تفاصيل المشوار",
|
||||
"Get Direction": "الاتجاهات",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get a discount on your first Siro ride!": "لك خصم على أول مشوار في سيرو!",
|
||||
"Get a discount on your first Intaleq ride!": "لك خصم على أول مشوار في سيرو!",
|
||||
"Get it Now!": "خذها الحين!",
|
||||
"Get to your destination quickly and easily.": "وصل وجهتك بسرعة وسهولة.",
|
||||
"Getting Started": "البداية",
|
||||
|
||||
@@ -490,7 +490,7 @@ final Map<String, String> de = {
|
||||
"Get Details of Trip": "Fahrtdetails erhalten",
|
||||
"Get Direction": "Route erhalten",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get a discount on your first Siro ride!": "Get a discount on your first Siro ride!",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get it Now!": "Holen Sie es sich jetzt!",
|
||||
"Get to your destination quickly and easily.": "Erreichen Sie Ihr Ziel schnell und einfach.",
|
||||
"Getting Started": "Erste Schritte",
|
||||
|
||||
@@ -490,7 +490,7 @@ final Map<String, String> el = {
|
||||
"Get Details of Trip": "Λεπτομέρειες",
|
||||
"Get Direction": "Οδηγίες",
|
||||
"Get a discount on your first Intaleq ride!": "Έκπτωση στην πρώτη διαδρομή Intaleq!",
|
||||
"Get a discount on your first Siro ride!": "Get a discount on your first Siro ride!",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get it Now!": "Πάρτε το!",
|
||||
"Get to your destination quickly and easily.": "Φτάστε γρήγορα στον προορισμό.",
|
||||
"Getting Started": "Ξεκινώντας",
|
||||
|
||||
@@ -490,7 +490,7 @@ final Map<String, String> es = {
|
||||
"Get Details of Trip": "Obtener detalles del viaje",
|
||||
"Get Direction": "Obtener dirección",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get a discount on your first Siro ride!": "Get a discount on your first Siro ride!",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get it Now!": "¡Consíguelo ahora!",
|
||||
"Get to your destination quickly and easily.": "Llega a tu destino de manera rápida y sencilla.",
|
||||
"Getting Started": "Cómo empezar",
|
||||
|
||||
@@ -490,7 +490,7 @@ final Map<String, String> fa = {
|
||||
"Get Details of Trip": "دریافت جزئیات سفر",
|
||||
"Get Direction": "مسیریابی",
|
||||
"Get a discount on your first Intaleq ride!": "برای اولین سفر خود در Intaleq تخفیف بگیرید!",
|
||||
"Get a discount on your first Siro ride!": "Get a discount on your first Siro ride!",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get it Now!": "همین الان بگیر!",
|
||||
"Get to your destination quickly and easily.": "سریع و آسان به مقصد برسید.",
|
||||
"Getting Started": "شروع کار",
|
||||
|
||||
@@ -490,7 +490,7 @@ final Map<String, String> fr = {
|
||||
"Get Details of Trip": "Obtenir les détails du trajet",
|
||||
"Get Direction": "Obtenir l'itinéraire",
|
||||
"Get a discount on your first Intaleq ride!": "Obtenez une réduction sur votre premier trajet Intaleq !",
|
||||
"Get a discount on your first Siro ride!": "Get a discount on your first Siro ride!",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get it Now!": "Obtenez-le maintenant !",
|
||||
"Get to your destination quickly and easily.": "Arrivez à destination rapidement et facilement.",
|
||||
"Getting Started": "Commencer",
|
||||
|
||||
@@ -490,7 +490,7 @@ final Map<String, String> hi = {
|
||||
"Get Details of Trip": "ट्रिप का विवरण प्राप्त करें",
|
||||
"Get Direction": "दिशा प्राप्त करें",
|
||||
"Get a discount on your first Intaleq ride!": "अपनी पहली Intaleq राइड पर छूट प्राप्त करें!",
|
||||
"Get a discount on your first Siro ride!": "Get a discount on your first Siro ride!",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get it Now!": "अभी प्राप्त करें!",
|
||||
"Get to your destination quickly and easily.": "अपनी मंजिल पर जल्दी और आसानी से पहुंचें।",
|
||||
"Getting Started": "शुरुआत करना",
|
||||
|
||||
@@ -490,7 +490,7 @@ final Map<String, String> it = {
|
||||
"Get Details of Trip": "Dettagli",
|
||||
"Get Direction": "Indicazioni",
|
||||
"Get a discount on your first Intaleq ride!": "Ottieni uno sconto sulla tua prima corsa Intaleq!",
|
||||
"Get a discount on your first Siro ride!": "Get a discount on your first Siro ride!",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get it Now!": "Ottienilo ora!",
|
||||
"Get to your destination quickly and easily.": "Arriva a destinazione velocemente.",
|
||||
"Getting Started": "Iniziare",
|
||||
|
||||
@@ -490,7 +490,7 @@ final Map<String, String> ru = {
|
||||
"Get Details of Trip": "Детали поездки",
|
||||
"Get Direction": "Маршрут",
|
||||
"Get a discount on your first Intaleq ride!": "Скидка на первую поездку в Intaleq!",
|
||||
"Get a discount on your first Siro ride!": "Get a discount on your first Siro ride!",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get it Now!": "Получить!",
|
||||
"Get to your destination quickly and easily.": "Доберитесь быстро и легко.",
|
||||
"Getting Started": "Начало",
|
||||
|
||||
@@ -490,7 +490,7 @@ final Map<String, String> tr = {
|
||||
"Get Details of Trip": "Yolculuk Detaylarını Al",
|
||||
"Get Direction": "Yol Tarifi Al",
|
||||
"Get a discount on your first Intaleq ride!": "İlk Intaleq yolculuğunda indirim kazan!",
|
||||
"Get a discount on your first Siro ride!": "Get a discount on your first Siro ride!",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get it Now!": "Hemen Al!",
|
||||
"Get to your destination quickly and easily.": "Hedefinize hızlı ve kolayca ulaşın.",
|
||||
"Getting Started": "Başlarken",
|
||||
|
||||
@@ -490,7 +490,7 @@ final Map<String, String> ur = {
|
||||
"Get Details of Trip": "سفر کی تفصیلات حاصل کریں",
|
||||
"Get Direction": "سمت حاصل کریں",
|
||||
"Get a discount on your first Intaleq ride!": "اپنی پہلی Intaleq سواری پر رعایت حاصل کریں!",
|
||||
"Get a discount on your first Siro ride!": "Get a discount on your first Siro ride!",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get it Now!": "ابھی حاصل کریں!",
|
||||
"Get to your destination quickly and easily.": "اپنی منزل پر تیزی اور آسانی سے پہنچیں۔",
|
||||
"Getting Started": "شروع کرنا",
|
||||
|
||||
@@ -490,7 +490,7 @@ final Map<String, String> zh = {
|
||||
"Get Details of Trip": "تفاصيل المشوار",
|
||||
"Get Direction": "الاتجاهات",
|
||||
"Get a discount on your first Intaleq ride!": "لك خصم على أول مشوار في انطلق!",
|
||||
"Get a discount on your first Siro ride!": "Get a discount on your first Siro ride!",
|
||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||
"Get it Now!": "خذها الحين!",
|
||||
"Get to your destination quickly and easily.": "وصل وجهتك بسرعة وسهولة.",
|
||||
"Getting Started": "البداية",
|
||||
|
||||
@@ -10,7 +10,7 @@ import '../print.dart';
|
||||
/// هذه الخدمة مشابهة لـ [IosLiveActivityService] ولكن لمنصة Android
|
||||
class AndroidLiveUpdateService {
|
||||
static const MethodChannel _channel =
|
||||
MethodChannel('siro/android_live_update');
|
||||
MethodChannel('Intaleq/android_live_update');
|
||||
|
||||
static bool _isSupported = false;
|
||||
static bool _isActive = false;
|
||||
|
||||
@@ -6,7 +6,7 @@ import '../print.dart';
|
||||
/// خدمة التحكم بوضع النافذة العائمة (Picture-in-Picture) على أندرويد.
|
||||
/// تُستدعى عند بدء الرحلة لتفعيل PiP تلقائياً عند خروج المستخدم من التطبيق.
|
||||
class PipService {
|
||||
static const MethodChannel _channel = MethodChannel('siro/pip');
|
||||
static const MethodChannel _channel = MethodChannel('Intaleq/pip');
|
||||
|
||||
/// هل وضع PiP مدعوم على هذا الجهاز؟
|
||||
static Future<bool> isPipSupported() async {
|
||||
|
||||
@@ -22,7 +22,7 @@ class RideLiveNotification {
|
||||
final android = AndroidNotificationDetails(
|
||||
'live_ride_tracking', // channel id
|
||||
'Ride Tracking', // channel name
|
||||
channelDescription: 'Live updates for the current Siro ride',
|
||||
channelDescription: 'Live updates for the current Intaleq ride',
|
||||
importance: Importance.max,
|
||||
priority: Priority.high,
|
||||
ongoing: true, // إشعار ثابت
|
||||
|
||||
@@ -2,7 +2,7 @@ import 'dart:io';
|
||||
import 'package:flutter/services.dart';
|
||||
|
||||
class RideTrackingNative {
|
||||
static const MethodChannel _channel = MethodChannel('siro/ride_tracking');
|
||||
static const MethodChannel _channel = MethodChannel('Intaleq/ride_tracking');
|
||||
|
||||
static Future<void> updateRideTracking({
|
||||
required String driverName,
|
||||
|
||||
@@ -3,13 +3,15 @@ import 'dart:math';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:get_demo/pages/home/domain/adapters/repository_adapter.dart';
|
||||
import 'package:get_demo/pages/home/domain/entity/cases_model.dart';
|
||||
import 'package:get_demo/pages/home/presentation/controllers/home_controller.dart';
|
||||
// import 'package:get_demo/routes/app_pages.dart';
|
||||
// import 'package:get_test/get_test.dart';
|
||||
import 'package:matcher/matcher.dart' as m;
|
||||
|
||||
import '../lib/pages/home/domain/adapters/repository_adapter.dart';
|
||||
import '../lib/pages/home/domain/entity/cases_model.dart'
|
||||
show CasesModel, Global;
|
||||
import '../lib/pages/home/presentation/controllers/home_controller.dart';
|
||||
|
||||
class MockRepository implements IHomeRepository {
|
||||
@override
|
||||
Future<CasesModel> getCases() async {
|
||||
|
||||
Reference in New Issue
Block a user