internet_permission 2.0.0 copy "internet_permission: ^2.0.0" to clipboard
internet_permission: ^2.0.0 copied to clipboard

A Flutter plugin that automatically adds internet permissions to all platforms (Android, iOS, macOS, Windows, Linux, Web). One command setup: dart run internet_permission:setup

Internet Permission ๐ŸŒ #

pub package Platform

Barcha platformalar uchun internet ruxsatlarini avtomatik qo'shadigan Flutter plugin!

Bir buyruq - barcha platformalar sozlangan! โšก

โœจ Xususiyatlar #

  • ๐Ÿš€ Avtomatik setup - Faqat dart run internet_permission:setup
  • ๐Ÿ“ฑ 6 ta platforma - Android, iOS, macOS, Windows, Linux, Web
  • ๐Ÿ”’ Xavfsiz - Backup fayllar yaratadi
  • โšก Tez - Bir necha soniyada sozlanadi
  • ๐ŸŽฏ Oson - Qo'shimcha konfiguratsiya kerak emas

๐Ÿš€ Tez Boshlash #

1๏ธโƒฃ O'rnatish #

flutter pub add internet_permission

2๏ธโƒฃ Setup (Avtomatik!) #

dart run internet_permission:setup

Hammasi! โœ…


๐Ÿ“‹ Nima qo'shiladi? #

๐Ÿ“ฑ Android #

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

๐ŸŽ iOS #

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

๐Ÿ’ป macOS #

<key>com.apple.security.network.client</key>
<true/>
<key>com.apple.security.network.server</key>
<true/>

๐ŸชŸ Windows #

โœ… Default ruxsat (maxsus sozlash kerak emas)

๐Ÿง Linux #

โœ… Default ruxsat (maxsus sozlash kerak emas)

๐ŸŒ Web #

โœ… Default ruxsat (maxsus sozlash kerak emas)


๐Ÿ’ป Foydalanish #

Internet holatini tekshirish #

import 'package:internet_permission/internet_permission.dart';

final permission = InternetPermission();

// Internet bormi?
bool isConnected = await permission.isConnected();
print('Internet: ${isConnected ? "โœ… Bor" : "โŒ Yo\'q"}');

// Ulanish turi
String connectionType = await permission.getConnectionType();
print('Turi: $connectionType'); // wifi, mobile, ethernet, vpn, none

To'liq misol #

import 'package:flutter/material.dart';
import 'package:internet_permission/internet_permission.dart';

class InternetChecker extends StatefulWidget {
  @override
  _InternetCheckerState createState() => _InternetCheckerState();
}

class _InternetCheckerState extends State<InternetChecker> {
  final _permission = InternetPermission();
  String _status = 'Tekshirilmoqda...';

  @override
  void initState() {
    super.initState();
    _checkInternet();
  }

  Future<void> _checkInternet() async {
    final connected = await _permission.isConnected();
    final type = await _permission.getConnectionType();
    
    setState(() {
      _status = connected 
          ? 'โœ… Internet: $type' 
          : 'โŒ Internet yo\'q';
    });
  }

  @override
  Widget build(BuildContext context) {
    return Column(
      children: [
        Text(_status, style: TextStyle(fontSize: 20)),
        ElevatedButton(
          onPressed: _checkInternet,
          child: Text('Qayta tekshirish'),
        ),
      ],
    );
  }
}

๐Ÿ“ฑ Setup Script Output #

$ dart run internet_permission:setup

โ•”โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•—
โ•‘  ๐Ÿš€ Internet Permission Setup v2.0.0                  โ•‘
โ•‘  ๐Ÿ“ฑ Barcha platformalar uchun                         โ•‘
โ•šโ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

๐Ÿ“ Loyiha: /path/to/your/project

๐Ÿ”ง Platformalar sozlanmoqda...

๐Ÿ“ฑ Android: โœ… Sozlandi (INTERNET, ACCESS_NETWORK_STATE)
๐ŸŽ iOS: โœ… Sozlandi (NSAppTransportSecurity)
๐Ÿ’ป macOS: โœ… Sozlandi (network.client, network.server)
๐ŸชŸ Windows: โœ… Sozlandi (Default ruxsat)
๐Ÿง Linux: โœ… Sozlandi (Default ruxsat)
๐ŸŒ Web: โœ… Sozlandi (Default ruxsat)

โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
โœ… 6/6 platforma muvaffaqiyatli sozlandi!

๐Ÿ“‹ Keyingi qadamlar:
   1. flutter clean
   2. flutter pub get
   3. flutter run
โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

๐ŸŽฏ API Reference #

isConnected() โ†’ Future<bool> #

Internet ulanishini tekshiradi.

bool connected = await InternetPermission().isConnected();

getConnectionType() โ†’ Future<String> #

Ulanish turini qaytaradi.

Mumkin qiymatlar: wifi, mobile, ethernet, vpn, none

String type = await InternetPermission().getConnectionType();

hasInternetPermission() โ†’ Future<bool> #

Ruxsat borligini tekshiradi.

bool hasPermission = await InternetPermission().hasInternetPermission();

getPlatformVersion() โ†’ Future<String?> #

Platform versiyasini qaytaradi.

String? version = await InternetPermission().getPlatformVersion();
// "Android 13", "iOS 16.0", "macOS 13.0", etc.

๐Ÿ”ง Qo'lda Setup (agar kerak bo'lsa) #

Agar avtomatik script ishlamasa:

๐Ÿ“ฑ Android - Qo'lda

android/app/src/main/AndroidManifest.xml:

<manifest xmlns:android="http://schemas.android.com/apk/res/android">
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    
    <application>
        <!-- ... -->
    </application>
</manifest>
๐ŸŽ iOS - Qo'lda

ios/Runner/Info.plist:

<dict>
    <!-- ... -->
    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>
</dict>
๐Ÿ’ป macOS - Qo'lda

macos/Runner/DebugProfile.entitlements va Release.entitlements:

<dict>
    <!-- ... -->
    <key>com.apple.security.network.client</key>
    <true/>
    <key>com.apple.security.network.server</key>
    <true/>
</dict>

๐Ÿงช Test Qilish #

Example loyihada: #

cd example
dart run internet_permission:setup
flutter run

Yangi loyihada: #

flutter create my_app
cd my_app
flutter pub add internet_permission
dart run internet_permission:setup
flutter run -d macos  # yoki boshqa device

โš ๏ธ Muhim Ma'lumotlar #

  1. Backup - Script .backup fayllar yaratadi (xavfsizlik uchun)
  2. Takroriy - Allaqachon sozlangan platformalarni o'tkazib yuboradi
  3. Production - iOS/macOS'da faqat HTTPS ishlatish tavsiya etiladi
  4. Web - CORS sozlamalari server tomonida kerak
  5. Eski buyruq - dart run internet_permission:setup_permissions hali ishlaydi

๐Ÿ› Xatoliklarni Hal Qilish #

Script ishlamasa #

# 1. Tozalash
flutter clean

# 2. Qayta o'rnatish
flutter pub get

# 3. Setup
dart run internet_permission:setup

Platform topilmadi #

Barcha platformalar sizning loyihangizda bo'lmasligi mumkin. Bu normal!

Script faqat mavjud platformalarni sozlaydi.

Ruxsatlar qo'shilmadi #

Qo'lda qo'shing (yuqoridagi "Qo'lda Setup" bo'limiga qarang).


๐Ÿ“ฆ Version History #

2.0.0 - 2024-12-06 ๐ŸŽ‰ #

  • โœจ YANGI: Barcha 6 platforma qo'llab-quvvatlanadi!
  • ๐Ÿš€ Qisqa buyruq: dart run internet_permission:setup
  • ๐Ÿ“ฑ Android, iOS, macOS, Windows, Linux, Web
  • ๐ŸŽจ Yanada chiroyli terminal output
  • โšก Tezroq va soddaroq

1.0.5 - 2024-12-05 #

  • โœจ Avtomatik setup script
  • ๐Ÿ“ฑ Android va iOS qo'llab-quvvatlash

To'liq changelog


๐Ÿค Hissa Qo'shish #

Pull request'lar xush kelibsiz!

  1. Fork qiling
  2. Feature branch yarating (git checkout -b feature/amazing)
  3. Commit qiling (git commit -m 'Ajoyib xususiyat')
  4. Push qiling (git push origin feature/amazing)
  5. Pull Request oching

๐Ÿ“„ Litsenziya #

MIT License - LICENSE faylida batafsil.


๐Ÿ”— Havolalar #


๐Ÿ‘จโ€๐Ÿ’ป Muallif #

AbubakrFlutter

๐Ÿ“ง Email: Uzbek0770oo@gmail.com
๐Ÿ™ GitHub: @AbubakrFlutter


โญ Agar foydali bo'lsa, star bering! #

Bu loyihani rivojlantirishda yordam beradi. Rahmat! ๐Ÿ™


Tayyor! Barcha platformalar uchun internet ruxsatlari bir buyruqda! ๐Ÿš€

dart run internet_permission:setup
4
likes
0
points
380
downloads

Publisher

unverified uploader

Weekly Downloads

A Flutter plugin that automatically adds internet permissions to all platforms (Android, iOS, macOS, Windows, Linux, Web). One command setup: dart run internet_permission:setup

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on internet_permission

Packages that implement internet_permission