Skip to content

Commit 8aff3da

Browse files
authored
Merge pull request #17 from GabrielRozendo/storage_manager_shared_prefs
Changing the default storage manager to Shared Prefs instead Hive
2 parents 7abd735 + e51f256 commit 8aff3da

File tree

10 files changed

+195
-81
lines changed

10 files changed

+195
-81
lines changed

example/lib/main.dart

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,19 @@
11
import 'package:aptabase_flutter/aptabase_flutter.dart';
2+
import 'package:example/storage_manager_hive.dart';
23
import 'package:flutter/material.dart';
34

45
void main() async {
56
WidgetsFlutterBinding.ensureInitialized();
6-
await Aptabase.init("A-DEV-0000000000");
7+
8+
// Simple init:
9+
// await Aptabase.init("A-DEV-0000000000");
10+
11+
// If you want to use Hive, an example:
12+
await Aptabase.init(
13+
"A-DEV-0000000000",
14+
const InitOptions(),
15+
StorageManagerHive(),
16+
);
717

818
runApp(const MyApp());
919
}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
import "package:aptabase_flutter/storage_manager.dart";
2+
3+
import "package:hive_ce_flutter/hive_flutter.dart";
4+
5+
class StorageManagerHive implements StorageManager {
6+
late final Box<MapEntry<String, String>> _box;
7+
8+
@override
9+
Future<void> init() async {
10+
await Hive.initFlutter();
11+
12+
_box = await Hive.openBox<MapEntry<String, String>>("aptabase_events");
13+
}
14+
15+
@override
16+
Future<void> deleteEvents(Iterable<String> keys) async {
17+
await _box.deleteAll(keys);
18+
}
19+
20+
@override
21+
Future<Iterable<MapEntry<String, String>>> getItems(int length) async {
22+
return _box.values.take(length);
23+
}
24+
25+
@override
26+
Future<void> addEvent(String key, String value) async {
27+
await _box.add(MapEntry(key, value));
28+
}
29+
}

example/macos/Flutter/GeneratedPluginRegistrant.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,11 @@ import Foundation
88
import device_info_plus
99
import package_info_plus
1010
import path_provider_foundation
11+
import shared_preferences_foundation
1112

1213
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
1314
DeviceInfoPlusMacosPlugin.register(with: registry.registrar(forPlugin: "DeviceInfoPlusMacosPlugin"))
1415
FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin"))
1516
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
17+
SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin"))
1618
}

example/pubspec.lock

Lines changed: 96 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ packages:
77
path: ".."
88
relative: true
99
source: path
10-
version: "0.3.0"
10+
version: "0.4.0"
1111
async:
1212
dependency: transitive
1313
description:
@@ -44,18 +44,18 @@ packages:
4444
dependency: transitive
4545
description:
4646
name: collection
47-
sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a
47+
sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf
4848
url: "https://pub.dev"
4949
source: hosted
50-
version: "1.18.0"
50+
version: "1.19.0"
5151
crypto:
5252
dependency: transitive
5353
description:
5454
name: crypto
55-
sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab
55+
sha256: "1e445881f28f22d6140f181e07737b22f1e099a5e1ff94b0af2f9e4a463f4855"
5656
url: "https://pub.dev"
5757
source: hosted
58-
version: "3.0.3"
58+
version: "3.0.6"
5959
cupertino_icons:
6060
dependency: "direct main"
6161
description:
@@ -127,22 +127,22 @@ packages:
127127
description: flutter
128128
source: sdk
129129
version: "0.0.0"
130-
hive:
131-
dependency: transitive
130+
hive_ce:
131+
dependency: "direct main"
132132
description:
133-
name: hive
134-
sha256: "8dcf6db979d7933da8217edcec84e9df1bdb4e4edc7fc77dbd5aa74356d6d941"
133+
name: hive_ce
134+
sha256: "2d66fa89a3e33e6d95edcf6c75409cf8f6442ab46229c9baf423af479f532e99"
135135
url: "https://pub.dev"
136136
source: hosted
137-
version: "2.2.3"
138-
hive_flutter:
139-
dependency: transitive
137+
version: "2.8.0+2"
138+
hive_ce_flutter:
139+
dependency: "direct main"
140140
description:
141-
name: hive_flutter
142-
sha256: dca1da446b1d808a51689fb5d0c6c9510c0a2ba01e22805d492c73b68e33eecc
141+
name: hive_ce_flutter
142+
sha256: e74e11d3ed622630ff1ee758037dab21a59d2182fa7b61378726c673742d2ab9
143143
url: "https://pub.dev"
144144
source: hosted
145-
version: "1.1.0"
145+
version: "2.1.0"
146146
http:
147147
dependency: transitive
148148
description:
@@ -163,18 +163,18 @@ packages:
163163
dependency: transitive
164164
description:
165165
name: leak_tracker
166-
sha256: "7f0df31977cb2c0b88585095d168e689669a2cc9b97c309665e3386f3e9d341a"
166+
sha256: "7bb2830ebd849694d1ec25bf1f44582d6ac531a57a365a803a6034ff751d2d06"
167167
url: "https://pub.dev"
168168
source: hosted
169-
version: "10.0.4"
169+
version: "10.0.7"
170170
leak_tracker_flutter_testing:
171171
dependency: transitive
172172
description:
173173
name: leak_tracker_flutter_testing
174-
sha256: "06e98f569d004c1315b991ded39924b21af84cf14cc94791b8aea337d25b57f8"
174+
sha256: "9491a714cca3667b60b5c420da8217e6de0d1ba7a5ec322fab01758f6998f379"
175175
url: "https://pub.dev"
176176
source: hosted
177-
version: "3.0.3"
177+
version: "3.0.8"
178178
leak_tracker_testing:
179179
dependency: transitive
180180
description:
@@ -203,18 +203,18 @@ packages:
203203
dependency: transitive
204204
description:
205205
name: material_color_utilities
206-
sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a"
206+
sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec
207207
url: "https://pub.dev"
208208
source: hosted
209-
version: "0.8.0"
209+
version: "0.11.1"
210210
meta:
211211
dependency: transitive
212212
description:
213213
name: meta
214-
sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136"
214+
sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7
215215
url: "https://pub.dev"
216216
source: hosted
217-
version: "1.12.0"
217+
version: "1.15.0"
218218
package_info_plus:
219219
dependency: transitive
220220
description:
@@ -243,26 +243,26 @@ packages:
243243
dependency: transitive
244244
description:
245245
name: path_provider
246-
sha256: c9e7d3a4cd1410877472158bee69963a4579f78b68c65a2b7d40d1a7a88bb161
246+
sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd"
247247
url: "https://pub.dev"
248248
source: hosted
249-
version: "2.1.3"
249+
version: "2.1.5"
250250
path_provider_android:
251251
dependency: transitive
252252
description:
253253
name: path_provider_android
254-
sha256: "9c96da072b421e98183f9ea7464898428e764bc0ce5567f27ec8693442e72514"
254+
sha256: "4adf4fd5423ec60a29506c76581bc05854c55e3a0b72d35bb28d661c9686edf2"
255255
url: "https://pub.dev"
256256
source: hosted
257-
version: "2.2.5"
257+
version: "2.2.15"
258258
path_provider_foundation:
259259
dependency: transitive
260260
description:
261261
name: path_provider_foundation
262-
sha256: f234384a3fdd67f989b4d54a5d73ca2a6c422fa55ae694381ae0f4375cd1ea16
262+
sha256: "4843174df4d288f5e29185bd6e72a6fbdf5a4a4602717eed565497429f179942"
263263
url: "https://pub.dev"
264264
source: hosted
265-
version: "2.4.0"
265+
version: "2.4.1"
266266
path_provider_linux:
267267
dependency: transitive
268268
description:
@@ -303,11 +303,67 @@ packages:
303303
url: "https://pub.dev"
304304
source: hosted
305305
version: "2.1.8"
306+
shared_preferences:
307+
dependency: transitive
308+
description:
309+
name: shared_preferences
310+
sha256: "95f9997ca1fb9799d494d0cb2a780fd7be075818d59f00c43832ed112b158a82"
311+
url: "https://pub.dev"
312+
source: hosted
313+
version: "2.3.3"
314+
shared_preferences_android:
315+
dependency: transitive
316+
description:
317+
name: shared_preferences_android
318+
sha256: "02a7d8a9ef346c9af715811b01fbd8e27845ad2c41148eefd31321471b41863d"
319+
url: "https://pub.dev"
320+
source: hosted
321+
version: "2.4.0"
322+
shared_preferences_foundation:
323+
dependency: transitive
324+
description:
325+
name: shared_preferences_foundation
326+
sha256: "6a52cfcdaeac77cad8c97b539ff688ccfc458c007b4db12be584fbe5c0e49e03"
327+
url: "https://pub.dev"
328+
source: hosted
329+
version: "2.5.4"
330+
shared_preferences_linux:
331+
dependency: transitive
332+
description:
333+
name: shared_preferences_linux
334+
sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f"
335+
url: "https://pub.dev"
336+
source: hosted
337+
version: "2.4.1"
338+
shared_preferences_platform_interface:
339+
dependency: transitive
340+
description:
341+
name: shared_preferences_platform_interface
342+
sha256: "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80"
343+
url: "https://pub.dev"
344+
source: hosted
345+
version: "2.4.1"
346+
shared_preferences_web:
347+
dependency: transitive
348+
description:
349+
name: shared_preferences_web
350+
sha256: d2ca4132d3946fec2184261726b355836a82c33d7d5b67af32692aff18a4684e
351+
url: "https://pub.dev"
352+
source: hosted
353+
version: "2.4.2"
354+
shared_preferences_windows:
355+
dependency: transitive
356+
description:
357+
name: shared_preferences_windows
358+
sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1"
359+
url: "https://pub.dev"
360+
source: hosted
361+
version: "2.4.1"
306362
sky_engine:
307363
dependency: transitive
308364
description: flutter
309365
source: sdk
310-
version: "0.0.99"
366+
version: "0.0.0"
311367
source_span:
312368
dependency: transitive
313369
description:
@@ -320,10 +376,10 @@ packages:
320376
dependency: transitive
321377
description:
322378
name: stack_trace
323-
sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b"
379+
sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377"
324380
url: "https://pub.dev"
325381
source: hosted
326-
version: "1.11.1"
382+
version: "1.12.0"
327383
stream_channel:
328384
dependency: transitive
329385
description:
@@ -336,10 +392,10 @@ packages:
336392
dependency: transitive
337393
description:
338394
name: string_scanner
339-
sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde"
395+
sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3"
340396
url: "https://pub.dev"
341397
source: hosted
342-
version: "1.2.0"
398+
version: "1.3.0"
343399
term_glyph:
344400
dependency: transitive
345401
description:
@@ -352,10 +408,10 @@ packages:
352408
dependency: transitive
353409
description:
354410
name: test_api
355-
sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f"
411+
sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c"
356412
url: "https://pub.dev"
357413
source: hosted
358-
version: "0.7.0"
414+
version: "0.7.3"
359415
typed_data:
360416
dependency: transitive
361417
description:
@@ -384,10 +440,10 @@ packages:
384440
dependency: transitive
385441
description:
386442
name: vm_service
387-
sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec"
443+
sha256: f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b
388444
url: "https://pub.dev"
389445
source: hosted
390-
version: "14.2.1"
446+
version: "14.3.0"
391447
web:
392448
dependency: transitive
393449
description:
@@ -421,5 +477,5 @@ packages:
421477
source: hosted
422478
version: "1.0.4"
423479
sdks:
424-
dart: ">=3.4.0 <4.0.0"
425-
flutter: ">=3.22.0"
480+
dart: ">=3.5.0 <4.0.0"
481+
flutter: ">=3.24.0"

example/pubspec.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,9 @@ dependencies:
3939
# Use with the CupertinoIcons class for iOS style icons.
4040
cupertino_icons: ^1.0.2
4141

42+
hive_ce: ^2.8.0+2
43+
hive_ce_flutter: ^2.1.0
44+
4245
dev_dependencies:
4346
flutter_test:
4447
sdk: flutter

0 commit comments

Comments
 (0)