openTelegram static method

Future<bool> openTelegram(
  1. String phoneNumber, {
  2. BuildContext? context,
})

Telegram chat

Implementation

static Future<bool> openTelegram(
  String phoneNumber, {
  BuildContext? context,
}) async {
  try {
    final cleanNumber = _cleanPhoneNumber(phoneNumber);

    String telegramNumber = cleanNumber;
    if (telegramNumber.startsWith('0')) {
      telegramNumber = '84${telegramNumber.substring(1)}';
    }

    final uri = Uri.parse('https://t.me/+$telegramNumber');

    if (await canLaunchUrl(uri)) {
      await launchUrl(uri, mode: LaunchMode.externalApplication);
      return true;
    } else {
      if (context != null && context.mounted) {
        _showError(context, 'Không thể mở Telegram');
      }
      return false;
    }
  } catch (e) {
    if (context != null && context.mounted) {
      _showError(context, 'Lỗi: $e');
    }
    return false;
  }
}