internet_permission 2.0.0
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 ๐ #
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 #
- Backup - Script
.backupfayllar yaratadi (xavfsizlik uchun) - Takroriy - Allaqachon sozlangan platformalarni o'tkazib yuboradi
- Production - iOS/macOS'da faqat HTTPS ishlatish tavsiya etiladi
- Web - CORS sozlamalari server tomonida kerak
- Eski buyruq -
dart run internet_permission:setup_permissionshali 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!
- Fork qiling
- Feature branch yarating (
git checkout -b feature/amazing) - Commit qiling (
git commit -m 'Ajoyib xususiyat') - Push qiling (
git push origin feature/amazing) - Pull Request oching
๐ Litsenziya #
MIT License - LICENSE faylida batafsil.
๐ Havolalar #
- Repository: github.com/AbubakrFlutter/internet_permission
- Issues: github.com/AbubakrFlutter/internet_permission/issues
- Pub.dev: pub.dev/packages/internet_permission
๐จโ๐ป 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