Update: 2026-07-27 17:18:25

This commit is contained in:
Hamza-Ayed
2026-07-27 17:18:25 +03:00
parent 5a65fc5a9e
commit 7eeddeb950
59 changed files with 236 additions and 70 deletions
+2 -2
View File
@@ -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())
@@ -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"
@@ -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) {
@@ -1,4 +1,4 @@
package com.siro.intaleq_rider
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": "البداية",
+1 -1
View File
@@ -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",
+1 -1
View File
@@ -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": "Ξεκινώντας",
+1 -1
View File
@@ -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",
+1 -1
View File
@@ -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": "شروع کار",
+1 -1
View File
@@ -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",
+1 -1
View File
@@ -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": "शुरुआत करना",
+1 -1
View File
@@ -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",
+1 -1
View File
@@ -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": "Начало",
+1 -1
View File
@@ -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",
+1 -1
View File
@@ -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": "شروع کرنا",
+1 -1
View File
@@ -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;
+1 -1
View File
@@ -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 {