mirror of
https://github.com/twonlyapp/twonly-app.git
synced 2026-01-15 07:48:40 +00:00
update gradle
This commit is contained in:
parent
9162d6b56e
commit
f3c9dbb796
11 changed files with 128 additions and 114 deletions
|
|
@ -19,7 +19,7 @@ android {
|
||||||
// compileSdk = flutter.compileSdkVersion
|
// compileSdk = flutter.compileSdkVersion
|
||||||
compileSdk 35
|
compileSdk 35
|
||||||
//ndkVersion = flutter.ndkVersion
|
//ndkVersion = flutter.ndkVersion
|
||||||
ndkVersion = "25.1.8937393"
|
ndkVersion = "27.0.12077973"
|
||||||
|
|
||||||
compileOptions {
|
compileOptions {
|
||||||
coreLibraryDesugaringEnabled true
|
coreLibraryDesugaringEnabled true
|
||||||
|
|
|
||||||
|
|
@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-all.zip
|
||||||
|
|
@ -18,7 +18,7 @@ pluginManagement {
|
||||||
|
|
||||||
plugins {
|
plugins {
|
||||||
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
|
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
|
||||||
id "com.android.application" version "8.3.2" apply false
|
id "com.android.application" version '8.9.0' apply false
|
||||||
// START: FlutterFire Configuration
|
// START: FlutterFire Configuration
|
||||||
id "com.google.gms.google-services" version "4.3.15" apply false
|
id "com.google.gms.google-services" version "4.3.15" apply false
|
||||||
// END: FlutterFire Configuration
|
// END: FlutterFire Configuration
|
||||||
|
|
|
||||||
|
|
@ -15,10 +15,10 @@ PODS:
|
||||||
- Firebase/Messaging (11.10.0):
|
- Firebase/Messaging (11.10.0):
|
||||||
- Firebase/CoreOnly
|
- Firebase/CoreOnly
|
||||||
- FirebaseMessaging (~> 11.10.0)
|
- FirebaseMessaging (~> 11.10.0)
|
||||||
- firebase_core (3.13.0):
|
- firebase_core (3.13.1):
|
||||||
- Firebase/CoreOnly (= 11.10.0)
|
- Firebase/CoreOnly (= 11.10.0)
|
||||||
- Flutter
|
- Flutter
|
||||||
- firebase_messaging (15.2.5):
|
- firebase_messaging (15.2.6):
|
||||||
- Firebase/Messaging (= 11.10.0)
|
- Firebase/Messaging (= 11.10.0)
|
||||||
- firebase_core
|
- firebase_core
|
||||||
- Flutter
|
- Flutter
|
||||||
|
|
@ -99,44 +99,44 @@ PODS:
|
||||||
- GoogleDataTransport (10.1.0):
|
- GoogleDataTransport (10.1.0):
|
||||||
- nanopb (~> 3.30910.0)
|
- nanopb (~> 3.30910.0)
|
||||||
- PromisesObjC (~> 2.4)
|
- PromisesObjC (~> 2.4)
|
||||||
- GoogleUtilities (8.0.2):
|
- GoogleUtilities (8.1.0):
|
||||||
- GoogleUtilities/AppDelegateSwizzler (= 8.0.2)
|
- GoogleUtilities/AppDelegateSwizzler (= 8.1.0)
|
||||||
- GoogleUtilities/Environment (= 8.0.2)
|
- GoogleUtilities/Environment (= 8.1.0)
|
||||||
- GoogleUtilities/Logger (= 8.0.2)
|
- GoogleUtilities/Logger (= 8.1.0)
|
||||||
- GoogleUtilities/MethodSwizzler (= 8.0.2)
|
- GoogleUtilities/MethodSwizzler (= 8.1.0)
|
||||||
- GoogleUtilities/Network (= 8.0.2)
|
- GoogleUtilities/Network (= 8.1.0)
|
||||||
- "GoogleUtilities/NSData+zlib (= 8.0.2)"
|
- "GoogleUtilities/NSData+zlib (= 8.1.0)"
|
||||||
- GoogleUtilities/Privacy (= 8.0.2)
|
- GoogleUtilities/Privacy (= 8.1.0)
|
||||||
- GoogleUtilities/Reachability (= 8.0.2)
|
- GoogleUtilities/Reachability (= 8.1.0)
|
||||||
- GoogleUtilities/SwizzlerTestHelpers (= 8.0.2)
|
- GoogleUtilities/SwizzlerTestHelpers (= 8.1.0)
|
||||||
- GoogleUtilities/UserDefaults (= 8.0.2)
|
- GoogleUtilities/UserDefaults (= 8.1.0)
|
||||||
- GoogleUtilities/AppDelegateSwizzler (8.0.2):
|
- GoogleUtilities/AppDelegateSwizzler (8.1.0):
|
||||||
- GoogleUtilities/Environment
|
- GoogleUtilities/Environment
|
||||||
- GoogleUtilities/Logger
|
- GoogleUtilities/Logger
|
||||||
- GoogleUtilities/Network
|
- GoogleUtilities/Network
|
||||||
- GoogleUtilities/Privacy
|
- GoogleUtilities/Privacy
|
||||||
- GoogleUtilities/Environment (8.0.2):
|
- GoogleUtilities/Environment (8.1.0):
|
||||||
- GoogleUtilities/Privacy
|
- GoogleUtilities/Privacy
|
||||||
- GoogleUtilities/Logger (8.0.2):
|
- GoogleUtilities/Logger (8.1.0):
|
||||||
- GoogleUtilities/Environment
|
- GoogleUtilities/Environment
|
||||||
- GoogleUtilities/Privacy
|
- GoogleUtilities/Privacy
|
||||||
- GoogleUtilities/MethodSwizzler (8.0.2):
|
- GoogleUtilities/MethodSwizzler (8.1.0):
|
||||||
- GoogleUtilities/Logger
|
- GoogleUtilities/Logger
|
||||||
- GoogleUtilities/Privacy
|
- GoogleUtilities/Privacy
|
||||||
- GoogleUtilities/Network (8.0.2):
|
- GoogleUtilities/Network (8.1.0):
|
||||||
- GoogleUtilities/Logger
|
- GoogleUtilities/Logger
|
||||||
- "GoogleUtilities/NSData+zlib"
|
- "GoogleUtilities/NSData+zlib"
|
||||||
- GoogleUtilities/Privacy
|
- GoogleUtilities/Privacy
|
||||||
- GoogleUtilities/Reachability
|
- GoogleUtilities/Reachability
|
||||||
- "GoogleUtilities/NSData+zlib (8.0.2)":
|
- "GoogleUtilities/NSData+zlib (8.1.0)":
|
||||||
- GoogleUtilities/Privacy
|
- GoogleUtilities/Privacy
|
||||||
- GoogleUtilities/Privacy (8.0.2)
|
- GoogleUtilities/Privacy (8.1.0)
|
||||||
- GoogleUtilities/Reachability (8.0.2):
|
- GoogleUtilities/Reachability (8.1.0):
|
||||||
- GoogleUtilities/Logger
|
- GoogleUtilities/Logger
|
||||||
- GoogleUtilities/Privacy
|
- GoogleUtilities/Privacy
|
||||||
- GoogleUtilities/SwizzlerTestHelpers (8.0.2):
|
- GoogleUtilities/SwizzlerTestHelpers (8.1.0):
|
||||||
- GoogleUtilities/MethodSwizzler
|
- GoogleUtilities/MethodSwizzler
|
||||||
- GoogleUtilities/UserDefaults (8.0.2):
|
- GoogleUtilities/UserDefaults (8.1.0):
|
||||||
- GoogleUtilities/Logger
|
- GoogleUtilities/Logger
|
||||||
- GoogleUtilities/Privacy
|
- GoogleUtilities/Privacy
|
||||||
- image_picker_ios (0.0.1):
|
- image_picker_ios (0.0.1):
|
||||||
|
|
@ -192,23 +192,23 @@ PODS:
|
||||||
- sqflite_darwin (0.0.4):
|
- sqflite_darwin (0.0.4):
|
||||||
- Flutter
|
- Flutter
|
||||||
- FlutterMacOS
|
- FlutterMacOS
|
||||||
- sqlite3 (3.49.1):
|
- sqlite3 (3.49.2):
|
||||||
- sqlite3/common (= 3.49.1)
|
- sqlite3/common (= 3.49.2)
|
||||||
- sqlite3/common (3.49.1)
|
- sqlite3/common (3.49.2)
|
||||||
- sqlite3/dbstatvtab (3.49.1):
|
- sqlite3/dbstatvtab (3.49.2):
|
||||||
- sqlite3/common
|
- sqlite3/common
|
||||||
- sqlite3/fts5 (3.49.1):
|
- sqlite3/fts5 (3.49.2):
|
||||||
- sqlite3/common
|
- sqlite3/common
|
||||||
- sqlite3/math (3.49.1):
|
- sqlite3/math (3.49.2):
|
||||||
- sqlite3/common
|
- sqlite3/common
|
||||||
- sqlite3/perf-threadsafe (3.49.1):
|
- sqlite3/perf-threadsafe (3.49.2):
|
||||||
- sqlite3/common
|
- sqlite3/common
|
||||||
- sqlite3/rtree (3.49.1):
|
- sqlite3/rtree (3.49.2):
|
||||||
- sqlite3/common
|
- sqlite3/common
|
||||||
- sqlite3_flutter_libs (0.0.1):
|
- sqlite3_flutter_libs (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- FlutterMacOS
|
- FlutterMacOS
|
||||||
- sqlite3 (~> 3.49.1)
|
- sqlite3 (~> 3.49.2)
|
||||||
- sqlite3/dbstatvtab
|
- sqlite3/dbstatvtab
|
||||||
- sqlite3/fts5
|
- sqlite3/fts5
|
||||||
- sqlite3/math
|
- sqlite3/math
|
||||||
|
|
@ -331,8 +331,8 @@ SPEC CHECKSUMS:
|
||||||
connectivity_plus: cb623214f4e1f6ef8fe7403d580fdad517d2f7dd
|
connectivity_plus: cb623214f4e1f6ef8fe7403d580fdad517d2f7dd
|
||||||
cryptography_flutter_plus: 44f4e9e4079395fcbb3e7809c0ac2c6ae2d9576f
|
cryptography_flutter_plus: 44f4e9e4079395fcbb3e7809c0ac2c6ae2d9576f
|
||||||
Firebase: 1fe1c0a7d9aaea32efe01fbea5f0ebd8d70e53a2
|
Firebase: 1fe1c0a7d9aaea32efe01fbea5f0ebd8d70e53a2
|
||||||
firebase_core: 2d4534e7b489907dcede540c835b48981d890943
|
firebase_core: ba71b44041571da878cb624ce0d80250bcbe58ad
|
||||||
firebase_messaging: 75bc93a4df25faccad67f6662ae872ac9ae69b64
|
firebase_messaging: 13129fe2ca166d1ed2d095062d76cee88943d067
|
||||||
FirebaseAnalytics: 4e42333f02cf78ed93703a5c36f36dd518aebdef
|
FirebaseAnalytics: 4e42333f02cf78ed93703a5c36f36dd518aebdef
|
||||||
FirebaseCore: 8344daef5e2661eb004b177488d6f9f0f24251b7
|
FirebaseCore: 8344daef5e2661eb004b177488d6f9f0f24251b7
|
||||||
FirebaseCoreInternal: ef4505d2afb1d0ebbc33162cb3795382904b5679
|
FirebaseCoreInternal: ef4505d2afb1d0ebbc33162cb3795382904b5679
|
||||||
|
|
@ -346,7 +346,7 @@ SPEC CHECKSUMS:
|
||||||
gal: baecd024ebfd13c441269ca7404792a7152fde89
|
gal: baecd024ebfd13c441269ca7404792a7152fde89
|
||||||
GoogleAppMeasurement: 36684bfb3ee034e2b42b4321eb19da3a1b81e65d
|
GoogleAppMeasurement: 36684bfb3ee034e2b42b4321eb19da3a1b81e65d
|
||||||
GoogleDataTransport: aae35b7ea0c09004c3797d53c8c41f66f219d6a7
|
GoogleDataTransport: aae35b7ea0c09004c3797d53c8c41f66f219d6a7
|
||||||
GoogleUtilities: 26a3abef001b6533cf678d3eb38fd3f614b7872d
|
GoogleUtilities: 00c88b9a86066ef77f0da2fab05f65d7768ed8e1
|
||||||
image_picker_ios: 7fe1ff8e34c1790d6fff70a32484959f563a928a
|
image_picker_ios: 7fe1ff8e34c1790d6fff70a32484959f563a928a
|
||||||
libwebp: 02b23773aedb6ff1fd38cec7a77b81414c6842a8
|
libwebp: 02b23773aedb6ff1fd38cec7a77b81414c6842a8
|
||||||
local_auth_darwin: 553ce4f9b16d3fdfeafce9cf042e7c9f77c1c391
|
local_auth_darwin: 553ce4f9b16d3fdfeafce9cf042e7c9f77c1c391
|
||||||
|
|
@ -364,8 +364,8 @@ SPEC CHECKSUMS:
|
||||||
share_plus: 50da8cb520a8f0f65671c6c6a99b3617ed10a58a
|
share_plus: 50da8cb520a8f0f65671c6c6a99b3617ed10a58a
|
||||||
shared_preferences_foundation: 9e1978ff2562383bd5676f64ec4e9aa8fa06a6f7
|
shared_preferences_foundation: 9e1978ff2562383bd5676f64ec4e9aa8fa06a6f7
|
||||||
sqflite_darwin: 20b2a3a3b70e43edae938624ce550a3cbf66a3d0
|
sqflite_darwin: 20b2a3a3b70e43edae938624ce550a3cbf66a3d0
|
||||||
sqlite3: fc1400008a9b3525f5914ed715a5d1af0b8f4983
|
sqlite3: 3c950dc86011117c307eb0b28c4a7bb449dce9f1
|
||||||
sqlite3_flutter_libs: f6acaa2172e6bb3e2e70c771661905080e8ebcf2
|
sqlite3_flutter_libs: 74334e3ef2dbdb7d37e50859bb45da43935779c4
|
||||||
url_launcher_ios: 694010445543906933d732453a59da0a173ae33d
|
url_launcher_ios: 694010445543906933d732453a59da0a173ae33d
|
||||||
video_compress: f2133a07762889d67f0711ac831faa26f956980e
|
video_compress: f2133a07762889d67f0711ac831faa26f956980e
|
||||||
video_player_avfoundation: 2cef49524dd1f16c5300b9cd6efd9611ce03639b
|
video_player_avfoundation: 2cef49524dd1f16c5300b9cd6efd9611ce03639b
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,6 @@ class MediaUploadMetadata {
|
||||||
late int maxShowTime;
|
late int maxShowTime;
|
||||||
late DateTime messageSendAt;
|
late DateTime messageSendAt;
|
||||||
late bool isVideo;
|
late bool isVideo;
|
||||||
late bool videoWithAudio;
|
|
||||||
late bool mirrorVideo;
|
late bool mirrorVideo;
|
||||||
|
|
||||||
MediaUploadMetadata();
|
MediaUploadMetadata();
|
||||||
|
|
@ -58,7 +57,6 @@ class MediaUploadMetadata {
|
||||||
'mirrorVideo': mirrorVideo,
|
'mirrorVideo': mirrorVideo,
|
||||||
'maxShowTime': maxShowTime,
|
'maxShowTime': maxShowTime,
|
||||||
'isVideo': isVideo,
|
'isVideo': isVideo,
|
||||||
'videoWithAudio': videoWithAudio,
|
|
||||||
'messageSendAt': messageSendAt.toIso8601String(),
|
'messageSendAt': messageSendAt.toIso8601String(),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
@ -67,7 +65,6 @@ class MediaUploadMetadata {
|
||||||
MediaUploadMetadata state = MediaUploadMetadata();
|
MediaUploadMetadata state = MediaUploadMetadata();
|
||||||
state.contactIds = List<int>.from(json['contactIds']);
|
state.contactIds = List<int>.from(json['contactIds']);
|
||||||
state.isRealTwonly = json['isRealTwonly'];
|
state.isRealTwonly = json['isRealTwonly'];
|
||||||
state.videoWithAudio = json['videoWithAudio'];
|
|
||||||
state.isVideo = json['isVideo'];
|
state.isVideo = json['isVideo'];
|
||||||
state.mirrorVideo = json['mirrorVideo'];
|
state.mirrorVideo = json['mirrorVideo'];
|
||||||
state.maxShowTime = json['maxShowTime'];
|
state.maxShowTime = json['maxShowTime'];
|
||||||
|
|
|
||||||
|
|
@ -28,10 +28,10 @@ Future tryTransmitMessages() async {
|
||||||
|
|
||||||
Map<String, dynamic> failed = {};
|
Map<String, dynamic> failed = {};
|
||||||
|
|
||||||
// List<MapEntry<String, dynamic>> sortedList = retransmit.entries.toList()
|
List<MapEntry<String, dynamic>> sortedList = retransmit.entries.toList()
|
||||||
// ..sort((a, b) => int.parse(a.key).compareTo(int.parse(b.key)));
|
..sort((a, b) => int.parse(a.key).compareTo(int.parse(b.key)));
|
||||||
|
|
||||||
for (final element in retransmit.entries) {
|
for (final element in sortedList) {
|
||||||
RetransmitMessage msg =
|
RetransmitMessage msg =
|
||||||
RetransmitMessage.fromJson(jsonDecode(element.value));
|
RetransmitMessage.fromJson(jsonDecode(element.value));
|
||||||
|
|
||||||
|
|
@ -145,8 +145,18 @@ Future<(String, RetransmitMessage)?> encryptMessage(
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
String stateId =
|
var retransmit = await getAllMessagesForRetransmitting();
|
||||||
(messageId ?? (60001 + Random().nextInt(100000))).toString();
|
|
||||||
|
int currentMaxStateId = messageId ?? 60000;
|
||||||
|
if (retransmit.isNotEmpty && messageId == null) {
|
||||||
|
currentMaxStateId = retransmit.keys.map((x) => int.parse(x)).reduce(max);
|
||||||
|
if (currentMaxStateId < 60000) {
|
||||||
|
currentMaxStateId = 60000;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
String stateId = (currentMaxStateId + 1).toString();
|
||||||
|
|
||||||
Box box = await getMediaStorage();
|
Box box = await getMediaStorage();
|
||||||
|
|
||||||
List<int>? pushData;
|
List<int>? pushData;
|
||||||
|
|
@ -162,10 +172,7 @@ Future<(String, RetransmitMessage)?> encryptMessage(
|
||||||
);
|
);
|
||||||
|
|
||||||
{
|
{
|
||||||
var retransmit = await getAllMessagesForRetransmitting();
|
|
||||||
|
|
||||||
retransmit[stateId] = jsonEncode(encryptedMessage.toJson());
|
retransmit[stateId] = jsonEncode(encryptedMessage.toJson());
|
||||||
|
|
||||||
box.put("messages-to-retransmit", jsonEncode(retransmit));
|
box.put("messages-to-retransmit", jsonEncode(retransmit));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,6 @@ import 'package:twonly/src/model/json/message.dart';
|
||||||
import 'package:twonly/src/model/protobuf/api/error.pb.dart';
|
import 'package:twonly/src/model/protobuf/api/error.pb.dart';
|
||||||
import 'package:twonly/src/model/protobuf/api/server_to_client.pb.dart';
|
import 'package:twonly/src/model/protobuf/api/server_to_client.pb.dart';
|
||||||
import 'package:twonly/src/providers/api/api.dart';
|
import 'package:twonly/src/providers/api/api.dart';
|
||||||
import 'package:twonly/src/providers/api/api_utils.dart';
|
|
||||||
import 'package:twonly/src/providers/api/media_received.dart';
|
import 'package:twonly/src/providers/api/media_received.dart';
|
||||||
import 'package:twonly/src/services/notification_service.dart';
|
import 'package:twonly/src/services/notification_service.dart';
|
||||||
import 'package:twonly/src/utils/misc.dart';
|
import 'package:twonly/src/utils/misc.dart';
|
||||||
|
|
@ -50,13 +49,23 @@ Future<ErrorCode?> isAllowedToSend() async {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Process the image up to the point more user informations are required
|
||||||
|
/// Returns the media upload id
|
||||||
|
Future<int> preSendMediaFile(Uint8List imageBytes, File? videoFilePath) async {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
Future cancelSendMediaFile(int mediaUploadId) async {}
|
||||||
|
|
||||||
|
Future finalizeSendMediaFile(int mediaUploadId, List<int> userIds,
|
||||||
|
bool isRealTwonly, bool isVideo, bool mirrorVideo, int maxShowTime) async {}
|
||||||
|
|
||||||
Future sendMediaFile(
|
Future sendMediaFile(
|
||||||
List<int> userIds,
|
List<int> userIds,
|
||||||
Uint8List imageBytes,
|
Uint8List imageBytes,
|
||||||
bool isRealTwonly,
|
bool isRealTwonly,
|
||||||
int maxShowTime,
|
int maxShowTime,
|
||||||
File? videoFilePath,
|
File? videoFilePath,
|
||||||
bool? enableVideoAudio,
|
|
||||||
bool mirrorVideo,
|
bool mirrorVideo,
|
||||||
) async {
|
) async {
|
||||||
MediaUploadMetadata metadata = MediaUploadMetadata();
|
MediaUploadMetadata metadata = MediaUploadMetadata();
|
||||||
|
|
@ -64,7 +73,6 @@ Future sendMediaFile(
|
||||||
metadata.isRealTwonly = isRealTwonly;
|
metadata.isRealTwonly = isRealTwonly;
|
||||||
metadata.messageSendAt = DateTime.now();
|
metadata.messageSendAt = DateTime.now();
|
||||||
metadata.isVideo = videoFilePath != null;
|
metadata.isVideo = videoFilePath != null;
|
||||||
metadata.videoWithAudio = enableVideoAudio != null && enableVideoAudio;
|
|
||||||
metadata.maxShowTime = maxShowTime;
|
metadata.maxShowTime = maxShowTime;
|
||||||
metadata.mirrorVideo = mirrorVideo;
|
metadata.mirrorVideo = mirrorVideo;
|
||||||
|
|
||||||
|
|
@ -266,13 +274,13 @@ Future<Uint8List?> handleCompressionState(
|
||||||
true, // https://github.com/jonataslaw/VideoCompress/issues/184
|
true, // https://github.com/jonataslaw/VideoCompress/issues/184
|
||||||
);
|
);
|
||||||
|
|
||||||
if (mediaInfo!.filesize! >= 20 * 1000 * 1000) {
|
if (mediaInfo!.filesize! >= 30 * 1000 * 1000) {
|
||||||
// if the media file is over 20MB compress it with low quality
|
// if the media file is over 20MB compress it with low quality
|
||||||
mediaInfo = await VideoCompress.compressVideo(
|
mediaInfo = await VideoCompress.compressVideo(
|
||||||
videoOriginalFile.path,
|
videoOriginalFile.path,
|
||||||
quality: VideoQuality.Res960x540Quality,
|
quality: VideoQuality.Res960x540Quality,
|
||||||
deleteOrigin: false,
|
deleteOrigin: false,
|
||||||
includeAudio: media.metadata.videoWithAudio,
|
includeAudio: true,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
|
|
|
||||||
|
|
@ -202,7 +202,10 @@ Future<MessageJson?> getDecryptedText(int source, Uint8List msg) async {
|
||||||
signalStore, SignalProtocolAddress(source.toString(), defaultDeviceId));
|
signalStore, SignalProtocolAddress(source.toString(), defaultDeviceId));
|
||||||
|
|
||||||
List<Uint8List>? msgs = removeLastXBytes(msg, 4);
|
List<Uint8List>? msgs = removeLastXBytes(msg, 4);
|
||||||
if (msgs == null) return null;
|
if (msgs == null) {
|
||||||
|
Logger("utils/signal").shout("Message requires at least 4 bytes.");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
Uint8List body = msgs[0];
|
Uint8List body = msgs[0];
|
||||||
int type = bytesToInt(msgs[1]);
|
int type = bytesToInt(msgs[1]);
|
||||||
Uint8List plaintext;
|
Uint8List plaintext;
|
||||||
|
|
@ -213,6 +216,7 @@ Future<MessageJson?> getDecryptedText(int source, Uint8List msg) async {
|
||||||
SignalMessage signalMsg = SignalMessage.fromSerialized(body);
|
SignalMessage signalMsg = SignalMessage.fromSerialized(body);
|
||||||
plaintext = await session.decryptFromSignal(signalMsg);
|
plaintext = await session.decryptFromSignal(signalMsg);
|
||||||
} else {
|
} else {
|
||||||
|
Logger("utils/signal").shout("Type not known: $type");
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
MessageJson dectext =
|
MessageJson dectext =
|
||||||
|
|
|
||||||
|
|
@ -408,7 +408,6 @@ class _ShareImageEditorView extends State<ShareImageEditorView> {
|
||||||
_isRealTwonly,
|
_isRealTwonly,
|
||||||
maxShowTime,
|
maxShowTime,
|
||||||
widget.videoFilePath,
|
widget.videoFilePath,
|
||||||
videoWithAudio,
|
|
||||||
widget.mirrorVideo,
|
widget.mirrorVideo,
|
||||||
);
|
);
|
||||||
if (context.mounted) {
|
if (context.mounted) {
|
||||||
|
|
|
||||||
|
|
@ -293,7 +293,6 @@ class _ShareImageView extends State<ShareImageView> {
|
||||||
widget.isRealTwonly,
|
widget.isRealTwonly,
|
||||||
widget.maxShowTime,
|
widget.maxShowTime,
|
||||||
widget.videoFilePath,
|
widget.videoFilePath,
|
||||||
widget.enableVideoAudio,
|
|
||||||
widget.mirrorVideo,
|
widget.mirrorVideo,
|
||||||
);
|
);
|
||||||
if (context.mounted) {
|
if (context.mounted) {
|
||||||
|
|
|
||||||
110
pubspec.lock
110
pubspec.lock
|
|
@ -13,10 +13,10 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: _flutterfire_internals
|
name: _flutterfire_internals
|
||||||
sha256: de9ecbb3ddafd446095f7e833c853aff2fa1682b017921fe63a833f9d6f0e422
|
sha256: "214e6f07e2a44f45972e0365c7b537eaeaddb4598db0778dd4ac64b4acd3f5b1"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.3.54"
|
version: "1.3.55"
|
||||||
adaptive_number:
|
adaptive_number:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -29,18 +29,18 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: analyzer
|
name: analyzer
|
||||||
sha256: "7c8416f91308ced2f7ac1e4fe59d1fb2f6cee25d6b015584505ea286f98a904a"
|
sha256: "904ae5bb474d32c38fb9482e2d925d5454cda04ddd0e55d2e6826bc72f6ba8c0"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "7.4.3"
|
version: "7.4.5"
|
||||||
archive:
|
archive:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: archive
|
name: archive
|
||||||
sha256: a7f37ff061d7abc2fcf213554b9dcaca713c5853afa5c065c44888bc9ccaf813
|
sha256: "2fde1607386ab523f7a36bb3e7edb43bd58e6edaf2ffb29d8a6d578b297fdbbd"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "4.0.6"
|
version: "4.0.7"
|
||||||
args:
|
args:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -173,18 +173,18 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: camera_android_camerax
|
name: camera_android_camerax
|
||||||
sha256: "26673643ed8f4a468a81ebd7ca760bc1d8c4c741df6d731cc958585ac1983126"
|
sha256: "0bd3d1645df00af2540a22df13ba466ac5fb2838a09bce4089cecdb1712a9e94"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.6.15"
|
version: "0.6.18"
|
||||||
camera_avfoundation:
|
camera_avfoundation:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: camera_avfoundation
|
name: camera_avfoundation
|
||||||
sha256: a33cd9a250296271cdf556891b7c0986a93772426f286595eccd5f45b185933c
|
sha256: ca36181194f429eef3b09de3c96280f2400693f9735025f90d1f4a27465fdd72
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.9.18+14"
|
version: "0.9.19"
|
||||||
camera_platform_interface:
|
camera_platform_interface:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -325,10 +325,10 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: dart_style
|
name: dart_style
|
||||||
sha256: "27eb0ae77836989a3bc541ce55595e8ceee0992807f14511552a898ddd0d88ac"
|
sha256: "5b236382b47ee411741447c1f1e111459c941ea1b3f2b540dde54c210a3662af"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "3.0.1"
|
version: "3.1.0"
|
||||||
dbus:
|
dbus:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -349,18 +349,18 @@ packages:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: drift
|
name: drift
|
||||||
sha256: "14a61af39d4584faf1d73b5b35e4b758a43008cf4c0fdb0576ec8e7032c0d9a5"
|
sha256: b584ddeb2b74436735dd2cf746d2d021e19a9a6770f409212fd5cbc2814ada85
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.26.0"
|
version: "2.26.1"
|
||||||
drift_dev:
|
drift_dev:
|
||||||
dependency: "direct dev"
|
dependency: "direct dev"
|
||||||
description:
|
description:
|
||||||
name: drift_dev
|
name: drift_dev
|
||||||
sha256: "0d3f8b33b76cf1c6a82ee34d9511c40957549c4674b8f1688609e6d6c7306588"
|
sha256: "54dc207c6e4662741f60e5752678df183957ab907754ffab0372a7082f6d2816"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.26.0"
|
version: "2.26.1"
|
||||||
drift_flutter:
|
drift_flutter:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
|
|
@ -445,10 +445,10 @@ packages:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: firebase_core
|
name: firebase_core
|
||||||
sha256: "017d17d9915670e6117497e640b2859e0b868026ea36bf3a57feb28c3b97debe"
|
sha256: "8cfe3c900512399ce8d50fcc817e5758ff8615eeb6fa5c846a4cc47bbf6353b6"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "3.13.0"
|
version: "3.13.1"
|
||||||
firebase_core_platform_interface:
|
firebase_core_platform_interface:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -461,34 +461,34 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: firebase_core_web
|
name: firebase_core_web
|
||||||
sha256: "129a34d1e0fb62e2b488d988a1fc26cc15636357e50944ffee2862efe8929b23"
|
sha256: ddd72baa6f727e5b23f32d9af23d7d453d67946f380bd9c21daf474ee0f7326e
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.22.0"
|
version: "2.23.0"
|
||||||
firebase_messaging:
|
firebase_messaging:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: firebase_messaging
|
name: firebase_messaging
|
||||||
sha256: "5f8918848ee0c8eb172fc7698619b2bcd7dda9ade8b93522c6297dd8f9178356"
|
sha256: "38111089e511f03daa2c66b4c3614c16421b7d78c84ee04331a0a65b47df4542"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "15.2.5"
|
version: "15.2.6"
|
||||||
firebase_messaging_platform_interface:
|
firebase_messaging_platform_interface:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: firebase_messaging_platform_interface
|
name: firebase_messaging_platform_interface
|
||||||
sha256: "0bbea00680249595fc896e7313a2bd90bd55be6e0abbe8b9a39d81b6b306acb6"
|
sha256: ba254769982e5f439e534eed68856181c74e2b3f417c8188afad2bb440807cc7
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "4.6.5"
|
version: "4.6.6"
|
||||||
firebase_messaging_web:
|
firebase_messaging_web:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: firebase_messaging_web
|
name: firebase_messaging_web
|
||||||
sha256: ffb392ce2a7e8439cd0a9a80e3c702194e73c927e5c7b4f0adf6faa00b245b17
|
sha256: dba89137272aac39e95f71408ba25c33fb8ed903cd5fa8d1e49b5cd0d96069e0
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "3.10.5"
|
version: "3.10.6"
|
||||||
fixnum:
|
fixnum:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
|
|
@ -626,10 +626,10 @@ packages:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: flutter_local_notifications
|
name: flutter_local_notifications
|
||||||
sha256: "33b3e0269ae9d51669957a923f2376bee96299b09915d856395af8c4238aebfa"
|
sha256: b94a50aabbe56ef254f95f3be75640f99120429f0a153b2dc30143cffc9bfdf3
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "19.1.0"
|
version: "19.2.1"
|
||||||
flutter_local_notifications_linux:
|
flutter_local_notifications_linux:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -800,18 +800,18 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: html
|
name: html
|
||||||
sha256: "9475be233c437f0e3637af55e7702cbbe5c23a68bd56e8a5fa2d426297b7c6c8"
|
sha256: "6d1264f2dffa1b1101c25a91dff0dc2daee4c18e87cd8538729773c073dbf602"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.15.5+1"
|
version: "0.15.6"
|
||||||
http:
|
http:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: http
|
name: http
|
||||||
sha256: fe7ab022b76f3034adc518fb6ea04a82387620e19977665ea18d30a1cf43442f
|
sha256: "2c11f3f94c687ee9bad77c171151672986360b2b001d109814ee7140b2cf261b"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.3.0"
|
version: "1.4.0"
|
||||||
http_multi_server:
|
http_multi_server:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -1280,10 +1280,10 @@ packages:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: pie_menu
|
name: pie_menu
|
||||||
sha256: d6511a64319c500e2263656020105fbce41dcc6234cb8c16f5f5cdac47ab64c1
|
sha256: "47e29f43fbe896ec47513b155762a661f6cd243317cd8e91ed5303ad0b9f6141"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "3.2.10"
|
version: "3.3.0"
|
||||||
platform:
|
platform:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -1328,18 +1328,18 @@ packages:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: protobuf
|
name: protobuf
|
||||||
sha256: fbb0c37d435641d0b84813c1dad41e6fa61ddc880a320bce16b3063ecec35aa6
|
sha256: "579fe5557eae58e3adca2e999e38f02441d8aa908703854a9e0a0f47fa857731"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "4.0.0"
|
version: "4.1.0"
|
||||||
provider:
|
provider:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
name: provider
|
name: provider
|
||||||
sha256: "489024f942069c2920c844ee18bb3d467c69e48955a4f32d1677f71be103e310"
|
sha256: "4abbd070a04e9ddc287673bf5a030c7ca8b685ff70218720abab8b092f53dd84"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "6.1.4"
|
version: "6.1.5"
|
||||||
pub_semver:
|
pub_semver:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -1573,18 +1573,18 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: sqlite3
|
name: sqlite3
|
||||||
sha256: "310af39c40dd0bb2058538333c9d9840a2725ae0b9f77e4fd09ad6696aa8f66e"
|
sha256: c0503c69b44d5714e6abbf4c1f51a3c3cc42b75ce785f44404765e4635481d38
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.7.5"
|
version: "2.7.6"
|
||||||
sqlite3_flutter_libs:
|
sqlite3_flutter_libs:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: sqlite3_flutter_libs
|
name: sqlite3_flutter_libs
|
||||||
sha256: "1a96b59227828d9eb1463191d684b37a27d66ee5ed7597fcf42eee6452c88a14"
|
sha256: "7986c26234c0a5cf4fd83ff4ee39d4195b1f47cdb50a949ec7987ede4dcbdc2a"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.5.32"
|
version: "0.5.33"
|
||||||
sqlparser:
|
sqlparser:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -1653,10 +1653,10 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: timezone
|
name: timezone
|
||||||
sha256: ffc9d5f4d1193534ef051f9254063fa53d588609418c84299956c3db9383587d
|
sha256: dd14a3b83cfd7cb19e7888f1cbc20f258b8d71b54c06f79ac585f14093a287d1
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "0.10.0"
|
version: "0.10.1"
|
||||||
timing:
|
timing:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -1725,10 +1725,10 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: url_launcher_web
|
name: url_launcher_web
|
||||||
sha256: "3ba963161bd0fe395917ba881d320b9c4f6dd3c4a233da62ab18a5025c85f1e9"
|
sha256: "4bd2b7b4dc4d4d0b94e5babfffbca8eac1a126c7f3d6ecbc1a11013faa3abba2"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.4.0"
|
version: "2.4.1"
|
||||||
url_launcher_windows:
|
url_launcher_windows:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -1765,10 +1765,10 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: vector_graphics_compiler
|
name: vector_graphics_compiler
|
||||||
sha256: "1b4b9e706a10294258727674a340ae0d6e64a7231980f9f9a3d12e4b42407aad"
|
sha256: "557a315b7d2a6dbb0aaaff84d857967ce6bdc96a63dc6ee2a57ce5a6ee5d3331"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.1.16"
|
version: "1.1.17"
|
||||||
vector_math:
|
vector_math:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -1805,10 +1805,10 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: video_player_android
|
name: video_player_android
|
||||||
sha256: ae7d4f1b41e3ac6d24dd9b9d5d6831b52d74a61bdd90a7a6262a33d8bb97c29a
|
sha256: f5b5ae7a41233adeb6cb4778b4c357522c906e45d590819f5b68d17cdc7a74b4
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "2.8.2"
|
version: "2.8.6"
|
||||||
video_player_avfoundation:
|
video_player_avfoundation:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -1861,10 +1861,10 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: web_socket
|
name: web_socket
|
||||||
sha256: bfe6f435f6ec49cb6c01da1e275ae4228719e59a6b067048c51e72d9d63bcc4b
|
sha256: "34d64019aa8e36bf9842ac014bb5d2f5586ca73df5e4d9bf5c936975cae6982c"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "1.0.0"
|
version: "1.0.1"
|
||||||
web_socket_channel:
|
web_socket_channel:
|
||||||
dependency: "direct main"
|
dependency: "direct main"
|
||||||
description:
|
description:
|
||||||
|
|
@ -1877,10 +1877,10 @@ packages:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
name: win32
|
name: win32
|
||||||
sha256: dc6ecaa00a7c708e5b4d10ee7bec8c270e9276dfcab1783f57e9962d7884305f
|
sha256: "329edf97fdd893e0f1e3b9e88d6a0e627128cc17cc316a8d67fda8f1451178ba"
|
||||||
url: "https://pub.dev"
|
url: "https://pub.dev"
|
||||||
source: hosted
|
source: hosted
|
||||||
version: "5.12.0"
|
version: "5.13.0"
|
||||||
x25519:
|
x25519:
|
||||||
dependency: transitive
|
dependency: transitive
|
||||||
description:
|
description:
|
||||||
|
|
@ -1915,4 +1915,4 @@ packages:
|
||||||
version: "3.1.3"
|
version: "3.1.3"
|
||||||
sdks:
|
sdks:
|
||||||
dart: ">=3.7.0 <4.0.0"
|
dart: ">=3.7.0 <4.0.0"
|
||||||
flutter: ">=3.27.0"
|
flutter: ">=3.29.0"
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue