mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2024-10-31 17:37:41 +00:00
9afed201c6
* add payload details * remove unused import * fix payload
39 lines
1 KiB
Dart
39 lines
1 KiB
Dart
import 'dart:io';
|
|
import 'package:package_info/package_info.dart';
|
|
|
|
enum DistributionType { googleplay, github, appstore, fdroid }
|
|
|
|
class DistributionInfo {
|
|
DistributionInfo._();
|
|
|
|
static DistributionInfo get instance => DistributionInfo._();
|
|
|
|
Future<String> getDistributionPath() async {
|
|
final isPlayStore = await isInstalledFromPlayStore();
|
|
final distributionPath = _getDistributionPath(isPlayStore);
|
|
|
|
return distributionPath.name;
|
|
}
|
|
|
|
DistributionType _getDistributionPath(bool isPlayStore) {
|
|
if (isPlayStore) {
|
|
return DistributionType.googleplay;
|
|
} else if (Platform.isAndroid) {
|
|
return DistributionType.github;
|
|
} else if (Platform.isIOS) {
|
|
return DistributionType.appstore;
|
|
} else {
|
|
return DistributionType.github;
|
|
}
|
|
}
|
|
|
|
Future<bool> isInstalledFromPlayStore() async {
|
|
try {
|
|
final packageInfo = await PackageInfo.fromPlatform();
|
|
return packageInfo.packageName == 'com.android.vending';
|
|
} catch (e) {
|
|
print('Error: $e');
|
|
return false;
|
|
}
|
|
}
|
|
}
|