Update: 2026-07-27 17:18:25
This commit is contained in:
@@ -34,7 +34,7 @@ if (flutterVersionName == null) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
android {
|
android {
|
||||||
namespace = "com.siro.intaleq_driver"
|
namespace = "com.intaleq_driver"
|
||||||
compileSdk = 36
|
compileSdk = 36
|
||||||
ndkVersion "29.0.14033849"
|
ndkVersion "29.0.14033849"
|
||||||
|
|
||||||
@@ -63,7 +63,7 @@ android {
|
|||||||
}
|
}
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId = "com.siro.intaleq_driver"
|
applicationId = "com.intaleq_driver"
|
||||||
minSdkVersion = 30
|
minSdkVersion = 30
|
||||||
targetSdk = 36
|
targetSdk = 36
|
||||||
versionCode = flutterVersionCode.toInteger()
|
versionCode = flutterVersionCode.toInteger()
|
||||||
|
|||||||
+5
-5
@@ -32,11 +32,11 @@
|
|||||||
|
|
||||||
# Android Auto Car App Library
|
# Android Auto Car App Library
|
||||||
-keep class androidx.car.app.** { *; }
|
-keep class androidx.car.app.** { *; }
|
||||||
-keep class com.siro.intaleq_driver.MyCarAppService { *; }
|
-keep class com.intaleq_driver.MyCarAppService { *; }
|
||||||
-keep class com.siro.intaleq_driver.MyCarSession { *; }
|
-keep class com.intaleq_driver.MyCarSession { *; }
|
||||||
-keep class com.siro.intaleq_driver.MyCarScreen { *; }
|
-keep class com.intaleq_driver.MyCarScreen { *; }
|
||||||
-keep class com.siro.intaleq_driver.CarNavigationData { *; }
|
-keep class com.intaleq_driver.CarNavigationData { *; }
|
||||||
-keep class com.siro.intaleq_driver.MapPresentation { *; }
|
-keep class com.intaleq_driver.MapPresentation { *; }
|
||||||
|
|
||||||
# MapLibre Native SDK
|
# MapLibre Native SDK
|
||||||
-keep class org.maplibre.android.** { *; }
|
-keep class org.maplibre.android.** { *; }
|
||||||
|
|||||||
@@ -129,7 +129,7 @@
|
|||||||
android:exported="true"
|
android:exported="true"
|
||||||
/>
|
/>
|
||||||
<service
|
<service
|
||||||
android:name="com.siro.intaleq_driver.trip_overlay_plugin.TripOverlayService"
|
android:name="com.intaleq_driver.trip_overlay_plugin.TripOverlayService"
|
||||||
android:exported="false"
|
android:exported="false"
|
||||||
android:foregroundServiceType="specialUse" />
|
android:foregroundServiceType="specialUse" />
|
||||||
<service android:name=".MyFirebaseMessagingService" android:exported="false" />
|
<service android:name=".MyFirebaseMessagingService" android:exported="false" />
|
||||||
@@ -168,7 +168,7 @@
|
|||||||
android:exported="true" android:permission="com.google.android.c2dm.permission.SEND">
|
android:exported="true" android:permission="com.google.android.c2dm.permission.SEND">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
|
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
|
||||||
<category android:name="com.siro.intaleq_driver" />
|
<category android:name="com.intaleq_driver" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</receiver>
|
</receiver>
|
||||||
<!-- خدمة الفقاعة الخاصة بك -->
|
<!-- خدمة الفقاعة الخاصة بك -->
|
||||||
|
|||||||
@@ -158,7 +158,7 @@ bool checkLoadedModules()
|
|||||||
//}
|
//}
|
||||||
|
|
||||||
extern "C" JNIEXPORT jboolean JNICALL
|
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())
|
if (isRooted())
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.siro.intaleq_driver
|
package com.intaleq_driver
|
||||||
|
|
||||||
import android.os.Handler
|
import android.os.Handler
|
||||||
import android.os.Looper
|
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.app.AlertDialog
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
@@ -18,8 +18,8 @@ import java.util.Timer
|
|||||||
import kotlin.concurrent.schedule
|
import kotlin.concurrent.schedule
|
||||||
|
|
||||||
class MainActivity : FlutterFragmentActivity() {
|
class MainActivity : FlutterFragmentActivity() {
|
||||||
private val SECURITY_CHANNEL = "com.siro.intaleq_driver/security"
|
private val SECURITY_CHANNEL = "com.intaleq_driver/security"
|
||||||
private val APP_CONTROL_CHANNEL = "com.siro.intaleq_driver/app_control"
|
private val APP_CONTROL_CHANNEL = "com.intaleq_driver/app_control"
|
||||||
private var appControlChannel: MethodChannel? = null
|
private var appControlChannel: MethodChannel? = null
|
||||||
|
|
||||||
override fun configureFlutterEngine(flutterEngine: FlutterEngine) {
|
override fun configureFlutterEngine(flutterEngine: FlutterEngine) {
|
||||||
@@ -63,7 +63,7 @@ class MainActivity : FlutterFragmentActivity() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// ✅ Channel for Android Auto Navigation Updates
|
// ✅ 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 ->
|
.setMethodCallHandler { call, result ->
|
||||||
when (call.method) {
|
when (call.method) {
|
||||||
"updateNavState" -> {
|
"updateNavState" -> {
|
||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.siro.intaleq_driver
|
package com.intaleq_driver
|
||||||
|
|
||||||
import android.app.Presentation
|
import android.app.Presentation
|
||||||
import android.content.Context
|
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.app.Application
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
@@ -24,7 +24,7 @@ class MyApplication : Application() {
|
|||||||
|
|
||||||
MethodChannel(
|
MethodChannel(
|
||||||
flutterEngine.dartExecutor.binaryMessenger,
|
flutterEngine.dartExecutor.binaryMessenger,
|
||||||
"com.siro.intaleq_driver/app_lifecycle"
|
"com.intaleq_driver/app_lifecycle"
|
||||||
)
|
)
|
||||||
.setMethodCallHandler { call, result ->
|
.setMethodCallHandler { call, result ->
|
||||||
if (call.method == "bringAppToForeground") {
|
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 android.content.pm.ApplicationInfo
|
||||||
import androidx.car.app.CarAppService
|
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.CarContext
|
||||||
import androidx.car.app.Screen
|
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.content.Intent
|
||||||
import android.hardware.display.DisplayManager
|
import android.hardware.display.DisplayManager
|
||||||
Regular → Executable
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.siro.intaleq_rider
|
package com.intaleq_driver
|
||||||
|
|
||||||
object RootDetection {
|
object RootDetection {
|
||||||
init {
|
init {
|
||||||
@@ -204,11 +204,13 @@ class AppLink {
|
|||||||
static String get getRides => "$rideServer/ride/rides/get.php";
|
static String get getRides => "$rideServer/ride/rides/get.php";
|
||||||
static String get getPlacesSyria => "$rideServer/ride/places_syria/get.php";
|
static String get getPlacesSyria => "$rideServer/ride/places_syria/get.php";
|
||||||
static String get getMishwari => "$rideServer/ride/mishwari/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 sendChatMessage => "$server/ride/chat/send_message.php";
|
||||||
static String get getTripCountByCaptain =>
|
static String get getTripCountByCaptain =>
|
||||||
"$rideServer/ride/rides/getTripCountByCaptain.php";
|
"$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 getRideStatus => "$rideServer/ride/rides/getRideStatus.php";
|
||||||
static String get getOverLayStatus => "$ride/overLay/get.php";
|
static String get getOverLayStatus => "$ride/overLay/get.php";
|
||||||
static String get getArgumentAfterAppliedFromBackground =>
|
static String get getArgumentAfterAppliedFromBackground =>
|
||||||
@@ -377,7 +379,7 @@ class AppLink {
|
|||||||
static String get uploadImage1 => "$server/uploadImage1.php";
|
static String get uploadImage1 => "$server/uploadImage1.php";
|
||||||
static String get uploadImagePortrate => "$server/uploadImagePortrate.php";
|
static String get uploadImagePortrate => "$server/uploadImagePortrate.php";
|
||||||
static String get uploadSyrianDocs =>
|
static String get uploadSyrianDocs =>
|
||||||
"$syria/auth/driver/uploadDriverDocs.php";
|
"$server/auth/driver/uploadDriverDocs.php";
|
||||||
static String get uploadImageType => "$server/uploadImageType.php";
|
static String get uploadImageType => "$server/uploadImageType.php";
|
||||||
//=============egypt documents ==============
|
//=============egypt documents ==============
|
||||||
static String get uploadEgyptidFront =>
|
static String get uploadEgyptidFront =>
|
||||||
@@ -490,8 +492,7 @@ class AppLink {
|
|||||||
static String get verifyOtpDriver => "$server/auth/otp/verify.php";
|
static String get verifyOtpDriver => "$server/auth/otp/verify.php";
|
||||||
static String get verifyEmailCaptin => "$authCaptin/verifyEmail.php";
|
static String get verifyEmailCaptin => "$authCaptin/verifyEmail.php";
|
||||||
static String get removeUser => "$authCaptin/removeAccount.php";
|
static String get removeUser => "$authCaptin/removeAccount.php";
|
||||||
static String get deletecaptainAccounr =>
|
static String get deletecaptainAccounr => "$authCaptin/deleteAccount.php";
|
||||||
"$authCaptin/deleteAccount.php";
|
|
||||||
static String get updateAccountBank => "$authCaptin/updateAccountBank.php";
|
static String get updateAccountBank => "$authCaptin/updateAccountBank.php";
|
||||||
static String get getAccount => "$authCaptin/getAccount.php";
|
static String get getAccount => "$authCaptin/getAccount.php";
|
||||||
static String get uploadImageToAi => "$auth/document_syria/ai_document.php";
|
static String get uploadImageToAi => "$auth/document_syria/ai_document.php";
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import 'package:flutter/services.dart';
|
|||||||
class CarPlatformBridge {
|
class CarPlatformBridge {
|
||||||
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;
|
static bool _isInitialized = false;
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'package:flutter/material.dart';
|
|||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
|
|
||||||
class AppLifecycleManager {
|
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 {
|
static Future<void> bringAppToForeground() async {
|
||||||
try {
|
try {
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import '../../main.dart';
|
|||||||
|
|
||||||
class SecurityChecks {
|
class SecurityChecks {
|
||||||
static const platform = MethodChannel(
|
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 {
|
static Future<bool> isDeviceCompromised() async {
|
||||||
try {
|
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/material.dart';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:get/get.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_demo/routes/app_pages.dart';
|
||||||
// import 'package:get_test/get_test.dart';
|
// import 'package:get_test/get_test.dart';
|
||||||
import 'package:matcher/matcher.dart' as m;
|
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 {
|
class MockRepository implements IHomeRepository {
|
||||||
@override
|
@override
|
||||||
Future<CasesModel> getCases() async {
|
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 {
|
android {
|
||||||
namespace = "com.siro.intaleq_rider"
|
namespace = "com.Intaleq.intaleq"
|
||||||
compileSdk = 36
|
compileSdk = 36
|
||||||
ndkVersion "29.0.14033849"
|
ndkVersion "29.0.14033849"
|
||||||
|
|
||||||
@@ -62,7 +62,7 @@ android {
|
|||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
// 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.
|
// You can update the following values to match your application needs.
|
||||||
// For more information, see: https://flutter.dev/to/review-gradle-config.
|
// For more information, see: https://flutter.dev/to/review-gradle-config.
|
||||||
minSdkVersion = 30
|
minSdkVersion = 30
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<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.INTERNET" />
|
||||||
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
||||||
|
|||||||
@@ -157,7 +157,7 @@ bool checkLoadedModules()
|
|||||||
//}
|
//}
|
||||||
|
|
||||||
extern "C" JNIEXPORT jboolean JNICALL
|
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())
|
if (isRooted())
|
||||||
|
|||||||
+4
-4
@@ -1,4 +1,4 @@
|
|||||||
package com.siro.intaleq_rider
|
package com.Intaleq.intaleq
|
||||||
|
|
||||||
import android.app.Notification
|
import android.app.Notification
|
||||||
import android.app.NotificationChannel
|
import android.app.NotificationChannel
|
||||||
@@ -32,9 +32,9 @@ import io.flutter.plugin.common.MethodCall
|
|||||||
class AndroidLiveUpdatePlugin(private val context: Context) {
|
class AndroidLiveUpdatePlugin(private val context: Context) {
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
private const val CHANNEL_ID = "siro_live_ride_progress"
|
private const val CHANNEL_ID = "Intaleq_live_ride_progress"
|
||||||
private const val CHANNEL_NAME = "Siro Live Ride Progress"
|
private const val CHANNEL_NAME = "Intaleq Live Ride Progress"
|
||||||
private const val CHANNEL_DESC = "Live progress updates for your current Siro ride"
|
private const val CHANNEL_DESC = "Live progress updates for your current Intaleq ride"
|
||||||
private const val NOTIFICATION_ID = 999
|
private const val NOTIFICATION_ID = 999
|
||||||
|
|
||||||
private const val STATUS_SEARCHING = "searching"
|
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.AlertDialog
|
||||||
import android.app.PictureInPictureParams
|
import android.app.PictureInPictureParams
|
||||||
@@ -21,15 +21,15 @@ import kotlin.concurrent.schedule
|
|||||||
class MainActivity : FlutterFragmentActivity() {
|
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
|
private lateinit var securityChannel: MethodChannel
|
||||||
|
|
||||||
// قناة PiP الجديدة
|
// قناة PiP الجديدة
|
||||||
private val PIP_CHANNEL = "siro/pip"
|
private val PIP_CHANNEL = "Intaleq/pip"
|
||||||
private var pipEnabled = false // هل الرحلة نشطة ويجب تفعيل PiP عند الخروج؟
|
private var pipEnabled = false // هل الرحلة نشطة ويجب تفعيل PiP عند الخروج؟
|
||||||
|
|
||||||
// قناة Android Live Update (Android 16 Progress Style)
|
// قناة 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
|
private lateinit var liveUpdatePlugin: AndroidLiveUpdatePlugin
|
||||||
|
|
||||||
override fun configureFlutterEngine(flutterEngine: FlutterEngine) {
|
override fun configureFlutterEngine(flutterEngine: FlutterEngine) {
|
||||||
Executable → Regular
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.siro.intaleq_driver
|
package com.Intaleq.intaleq
|
||||||
|
|
||||||
object RootDetection {
|
object RootDetection {
|
||||||
init {
|
init {
|
||||||
@@ -8,7 +8,7 @@ import '../../main.dart';
|
|||||||
|
|
||||||
class SecurityChecks {
|
class SecurityChecks {
|
||||||
static const platform = MethodChannel(
|
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 {
|
static Future<bool> isDeviceCompromised() async {
|
||||||
try {
|
try {
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ class IosLiveActivityService {
|
|||||||
static void init() {
|
static void init() {
|
||||||
if (Platform.isIOS) {
|
if (Platform.isIOS) {
|
||||||
_liveActivitiesPlugin.init(
|
_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 {
|
Future<void> sharePassengerCode() async {
|
||||||
if (couponCode != null) {
|
if (couponCode != null) {
|
||||||
final String shareText = '''
|
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
|
${'Use my referral code:'.tr} $couponCode
|
||||||
${'Download the Siro app now and enjoy your ride:'.tr}
|
${'Download the Siro app now and enjoy your ride:'.tr}
|
||||||
${AppLink.inviteRedirectUrl}?code=$couponCode&app=rider
|
${AppLink.inviteRedirectUrl}?code=$couponCode&app=rider
|
||||||
|
|||||||
@@ -524,7 +524,7 @@ final Map<String, String> ar_eg = {
|
|||||||
"Get Details of Trip": "تفاصيل المشوار",
|
"Get Details of Trip": "تفاصيل المشوار",
|
||||||
"Get Direction": "الاتجاهات",
|
"Get Direction": "الاتجاهات",
|
||||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
"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 it Now!": "خذها الحين!",
|
||||||
"Get to your destination quickly and easily.": "وصل وجهتك بسرعة وسهولة.",
|
"Get to your destination quickly and easily.": "وصل وجهتك بسرعة وسهولة.",
|
||||||
"Getting Started": "البداية",
|
"Getting Started": "البداية",
|
||||||
|
|||||||
@@ -523,7 +523,7 @@ final Map<String, String> ar_jo = {
|
|||||||
"Get Details of Trip": "تفاصيل المشوار",
|
"Get Details of Trip": "تفاصيل المشوار",
|
||||||
"Get Direction": "الاتجاهات",
|
"Get Direction": "الاتجاهات",
|
||||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
"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 it Now!": "احصل عليها الآن!",
|
||||||
"Get to your destination quickly and easily.": "وصل وجهتك بسرعة وسهولة.",
|
"Get to your destination quickly and easily.": "وصل وجهتك بسرعة وسهولة.",
|
||||||
"Getting Started": "البداية",
|
"Getting Started": "البداية",
|
||||||
|
|||||||
@@ -524,7 +524,7 @@ final Map<String, String> ar_sy = {
|
|||||||
"Get Details of Trip": "تفاصيل المشوار",
|
"Get Details of Trip": "تفاصيل المشوار",
|
||||||
"Get Direction": "الاتجاهات",
|
"Get Direction": "الاتجاهات",
|
||||||
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
"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 it Now!": "خذها الحين!",
|
||||||
"Get to your destination quickly and easily.": "وصل وجهتك بسرعة وسهولة.",
|
"Get to your destination quickly and easily.": "وصل وجهتك بسرعة وسهولة.",
|
||||||
"Getting Started": "البداية",
|
"Getting Started": "البداية",
|
||||||
|
|||||||
@@ -490,7 +490,7 @@ final Map<String, String> de = {
|
|||||||
"Get Details of Trip": "Fahrtdetails erhalten",
|
"Get Details of Trip": "Fahrtdetails erhalten",
|
||||||
"Get Direction": "Route 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 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 it Now!": "Holen Sie es sich jetzt!",
|
||||||
"Get to your destination quickly and easily.": "Erreichen Sie Ihr Ziel schnell und einfach.",
|
"Get to your destination quickly and easily.": "Erreichen Sie Ihr Ziel schnell und einfach.",
|
||||||
"Getting Started": "Erste Schritte",
|
"Getting Started": "Erste Schritte",
|
||||||
|
|||||||
@@ -490,7 +490,7 @@ final Map<String, String> el = {
|
|||||||
"Get Details of Trip": "Λεπτομέρειες",
|
"Get Details of Trip": "Λεπτομέρειες",
|
||||||
"Get Direction": "Οδηγίες",
|
"Get Direction": "Οδηγίες",
|
||||||
"Get a discount on your first Intaleq ride!": "Έκπτωση στην πρώτη διαδρομή Intaleq!",
|
"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 it Now!": "Πάρτε το!",
|
||||||
"Get to your destination quickly and easily.": "Φτάστε γρήγορα στον προορισμό.",
|
"Get to your destination quickly and easily.": "Φτάστε γρήγορα στον προορισμό.",
|
||||||
"Getting Started": "Ξεκινώντας",
|
"Getting Started": "Ξεκινώντας",
|
||||||
|
|||||||
@@ -490,7 +490,7 @@ final Map<String, String> es = {
|
|||||||
"Get Details of Trip": "Obtener detalles del viaje",
|
"Get Details of Trip": "Obtener detalles del viaje",
|
||||||
"Get Direction": "Obtener dirección",
|
"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 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 it Now!": "¡Consíguelo ahora!",
|
||||||
"Get to your destination quickly and easily.": "Llega a tu destino de manera rápida y sencilla.",
|
"Get to your destination quickly and easily.": "Llega a tu destino de manera rápida y sencilla.",
|
||||||
"Getting Started": "Cómo empezar",
|
"Getting Started": "Cómo empezar",
|
||||||
|
|||||||
@@ -490,7 +490,7 @@ final Map<String, String> fa = {
|
|||||||
"Get Details of Trip": "دریافت جزئیات سفر",
|
"Get Details of Trip": "دریافت جزئیات سفر",
|
||||||
"Get Direction": "مسیریابی",
|
"Get Direction": "مسیریابی",
|
||||||
"Get a discount on your first Intaleq ride!": "برای اولین سفر خود در Intaleq تخفیف بگیرید!",
|
"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 it Now!": "همین الان بگیر!",
|
||||||
"Get to your destination quickly and easily.": "سریع و آسان به مقصد برسید.",
|
"Get to your destination quickly and easily.": "سریع و آسان به مقصد برسید.",
|
||||||
"Getting Started": "شروع کار",
|
"Getting Started": "شروع کار",
|
||||||
|
|||||||
@@ -490,7 +490,7 @@ final Map<String, String> fr = {
|
|||||||
"Get Details of Trip": "Obtenir les détails du trajet",
|
"Get Details of Trip": "Obtenir les détails du trajet",
|
||||||
"Get Direction": "Obtenir l'itinéraire",
|
"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 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 it Now!": "Obtenez-le maintenant !",
|
||||||
"Get to your destination quickly and easily.": "Arrivez à destination rapidement et facilement.",
|
"Get to your destination quickly and easily.": "Arrivez à destination rapidement et facilement.",
|
||||||
"Getting Started": "Commencer",
|
"Getting Started": "Commencer",
|
||||||
|
|||||||
@@ -490,7 +490,7 @@ final Map<String, String> hi = {
|
|||||||
"Get Details of Trip": "ट्रिप का विवरण प्राप्त करें",
|
"Get Details of Trip": "ट्रिप का विवरण प्राप्त करें",
|
||||||
"Get Direction": "दिशा प्राप्त करें",
|
"Get Direction": "दिशा प्राप्त करें",
|
||||||
"Get a discount on your first Intaleq ride!": "अपनी पहली Intaleq राइड पर छूट प्राप्त करें!",
|
"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 it Now!": "अभी प्राप्त करें!",
|
||||||
"Get to your destination quickly and easily.": "अपनी मंजिल पर जल्दी और आसानी से पहुंचें।",
|
"Get to your destination quickly and easily.": "अपनी मंजिल पर जल्दी और आसानी से पहुंचें।",
|
||||||
"Getting Started": "शुरुआत करना",
|
"Getting Started": "शुरुआत करना",
|
||||||
|
|||||||
@@ -490,7 +490,7 @@ final Map<String, String> it = {
|
|||||||
"Get Details of Trip": "Dettagli",
|
"Get Details of Trip": "Dettagli",
|
||||||
"Get Direction": "Indicazioni",
|
"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 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 it Now!": "Ottienilo ora!",
|
||||||
"Get to your destination quickly and easily.": "Arriva a destinazione velocemente.",
|
"Get to your destination quickly and easily.": "Arriva a destinazione velocemente.",
|
||||||
"Getting Started": "Iniziare",
|
"Getting Started": "Iniziare",
|
||||||
|
|||||||
@@ -490,7 +490,7 @@ final Map<String, String> ru = {
|
|||||||
"Get Details of Trip": "Детали поездки",
|
"Get Details of Trip": "Детали поездки",
|
||||||
"Get Direction": "Маршрут",
|
"Get Direction": "Маршрут",
|
||||||
"Get a discount on your first Intaleq ride!": "Скидка на первую поездку в Intaleq!",
|
"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 it Now!": "Получить!",
|
||||||
"Get to your destination quickly and easily.": "Доберитесь быстро и легко.",
|
"Get to your destination quickly and easily.": "Доберитесь быстро и легко.",
|
||||||
"Getting Started": "Начало",
|
"Getting Started": "Начало",
|
||||||
|
|||||||
@@ -490,7 +490,7 @@ final Map<String, String> tr = {
|
|||||||
"Get Details of Trip": "Yolculuk Detaylarını Al",
|
"Get Details of Trip": "Yolculuk Detaylarını Al",
|
||||||
"Get Direction": "Yol Tarifi 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 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 it Now!": "Hemen Al!",
|
||||||
"Get to your destination quickly and easily.": "Hedefinize hızlı ve kolayca ulaşın.",
|
"Get to your destination quickly and easily.": "Hedefinize hızlı ve kolayca ulaşın.",
|
||||||
"Getting Started": "Başlarken",
|
"Getting Started": "Başlarken",
|
||||||
|
|||||||
@@ -490,7 +490,7 @@ final Map<String, String> ur = {
|
|||||||
"Get Details of Trip": "سفر کی تفصیلات حاصل کریں",
|
"Get Details of Trip": "سفر کی تفصیلات حاصل کریں",
|
||||||
"Get Direction": "سمت حاصل کریں",
|
"Get Direction": "سمت حاصل کریں",
|
||||||
"Get a discount on your first Intaleq ride!": "اپنی پہلی Intaleq سواری پر رعایت حاصل کریں!",
|
"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 it Now!": "ابھی حاصل کریں!",
|
||||||
"Get to your destination quickly and easily.": "اپنی منزل پر تیزی اور آسانی سے پہنچیں۔",
|
"Get to your destination quickly and easily.": "اپنی منزل پر تیزی اور آسانی سے پہنچیں۔",
|
||||||
"Getting Started": "شروع کرنا",
|
"Getting Started": "شروع کرنا",
|
||||||
|
|||||||
@@ -490,7 +490,7 @@ final Map<String, String> zh = {
|
|||||||
"Get Details of Trip": "تفاصيل المشوار",
|
"Get Details of Trip": "تفاصيل المشوار",
|
||||||
"Get Direction": "الاتجاهات",
|
"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 Siro ride!",
|
"Get a discount on your first Intaleq ride!": "Get a discount on your first Intaleq ride!",
|
||||||
"Get it Now!": "خذها الحين!",
|
"Get it Now!": "خذها الحين!",
|
||||||
"Get to your destination quickly and easily.": "وصل وجهتك بسرعة وسهولة.",
|
"Get to your destination quickly and easily.": "وصل وجهتك بسرعة وسهولة.",
|
||||||
"Getting Started": "البداية",
|
"Getting Started": "البداية",
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import '../print.dart';
|
|||||||
/// هذه الخدمة مشابهة لـ [IosLiveActivityService] ولكن لمنصة Android
|
/// هذه الخدمة مشابهة لـ [IosLiveActivityService] ولكن لمنصة Android
|
||||||
class AndroidLiveUpdateService {
|
class AndroidLiveUpdateService {
|
||||||
static const MethodChannel _channel =
|
static const MethodChannel _channel =
|
||||||
MethodChannel('siro/android_live_update');
|
MethodChannel('Intaleq/android_live_update');
|
||||||
|
|
||||||
static bool _isSupported = false;
|
static bool _isSupported = false;
|
||||||
static bool _isActive = false;
|
static bool _isActive = false;
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import '../print.dart';
|
|||||||
/// خدمة التحكم بوضع النافذة العائمة (Picture-in-Picture) على أندرويد.
|
/// خدمة التحكم بوضع النافذة العائمة (Picture-in-Picture) على أندرويد.
|
||||||
/// تُستدعى عند بدء الرحلة لتفعيل PiP تلقائياً عند خروج المستخدم من التطبيق.
|
/// تُستدعى عند بدء الرحلة لتفعيل PiP تلقائياً عند خروج المستخدم من التطبيق.
|
||||||
class PipService {
|
class PipService {
|
||||||
static const MethodChannel _channel = MethodChannel('siro/pip');
|
static const MethodChannel _channel = MethodChannel('Intaleq/pip');
|
||||||
|
|
||||||
/// هل وضع PiP مدعوم على هذا الجهاز؟
|
/// هل وضع PiP مدعوم على هذا الجهاز؟
|
||||||
static Future<bool> isPipSupported() async {
|
static Future<bool> isPipSupported() async {
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ class RideLiveNotification {
|
|||||||
final android = AndroidNotificationDetails(
|
final android = AndroidNotificationDetails(
|
||||||
'live_ride_tracking', // channel id
|
'live_ride_tracking', // channel id
|
||||||
'Ride Tracking', // channel name
|
'Ride Tracking', // channel name
|
||||||
channelDescription: 'Live updates for the current Siro ride',
|
channelDescription: 'Live updates for the current Intaleq ride',
|
||||||
importance: Importance.max,
|
importance: Importance.max,
|
||||||
priority: Priority.high,
|
priority: Priority.high,
|
||||||
ongoing: true, // إشعار ثابت
|
ongoing: true, // إشعار ثابت
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import 'dart:io';
|
|||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
|
|
||||||
class RideTrackingNative {
|
class RideTrackingNative {
|
||||||
static const MethodChannel _channel = MethodChannel('siro/ride_tracking');
|
static const MethodChannel _channel = MethodChannel('Intaleq/ride_tracking');
|
||||||
|
|
||||||
static Future<void> updateRideTracking({
|
static Future<void> updateRideTracking({
|
||||||
required String driverName,
|
required String driverName,
|
||||||
|
|||||||
@@ -3,13 +3,15 @@ import 'dart:math';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:get/get.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_demo/routes/app_pages.dart';
|
||||||
// import 'package:get_test/get_test.dart';
|
// import 'package:get_test/get_test.dart';
|
||||||
import 'package:matcher/matcher.dart' as m;
|
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 {
|
class MockRepository implements IHomeRepository {
|
||||||
@override
|
@override
|
||||||
Future<CasesModel> getCases() async {
|
Future<CasesModel> getCases() async {
|
||||||
|
|||||||
Reference in New Issue
Block a user