सार्वजनिक जानकारी से बना चयन मार्गदर्शन। केवल संदर्भ हेतु।
flutter_v2ray एक Flutter प्लगइन है जो Android और iOS उपकरणों पर V2Ray कनेक्टिविटी सक्षम करता है, जिसमें वीपीएन मोड और प्रॉक्सी-केवल कॉन्फ़िगरेशन दोनों शामिल हैं। यह डेवलपर्स को अपने ऐप्स में सुरक्षित, कस्टमाइज़ेबल नेटवर्क रूटिंग को एम्बेड करने की अनुमति देता है, जिससे प्रतिबंधित सामग्री या निजी नेटवर्क सेवाओं तक पहुंच की अनुमति मिलती है। प्लगइन वीपीएन कनेक्शन को स्थापित और प्रबंधित करने के लिए एक सीधा इंटरफ़ेस प्रदान करता है, जो विश्वसनीय प्रदर्शन के लिए मूल प्लेटफ़ॉर्म क्षमताओं का उपयोग करता है। यह उन ऐप्स में विशेष रूप से उपयोगी है जिनमें उन्नत नेटवर्किंग विशेषताओं और मजबूत गोपनीयता नियंत्रण की आवश्यकता होती है।
उपयोग
सुरक्षित एप्लिकेशन से सर्वर संचार
क्षेत्रीय सामग्री प्रतिबंधों को बाधित करना
गोपनीयता-केंद्रित एप्लिकेशन बनाना
कस्टम प्रॉक्सी कॉन्फ़िगरेशन को एकीकृत करना
एन्क्रिप्टेड नेटवर्क टनल को सक्षम करना
मुख्य विशेषताएँ
VPN मोड और प्रॉक्सी केवल कनेक्शन प्रकार दोनों का समर्थन करता है
क्रॉस-प्लेटफ़ॉर्म सुविधा (Android और iOS)
स्थिर प्रदर्शन के लिए मूल एकीकरण
संपर्क प्रबंधन के लिए सरल API
V2Ray JSON सेटिंग्स के माध्यम से कॉन्फ़िगरेबल
इनके लिए उपयुक्त
सुरक्षित संचार ऐप बना रहे विकासक
नेटवर्क प्रतिबंधों को बाधित करने वाले ऐप्स
गोपनीयता-उन्मुख मोबाइल एप्लिकेशन
नेटवर्क टूल एंटीग्रेशन
कस्टम प्रॉक्सी समाधान
विचार योग्य बातें
Android और iOS पर उचित सिस्टम की अनुमति की आवश्यकता होती है
जटिल V2Ray सेटअप के लिए अतिरिक्त कॉन्फ़िगरेशन की आवश्यकता हो सकती है
VPN कार्यक्षमता के कारण संभावित ऐप स्टोर समीक्षा चुनौतियाँ
कुछ संचालनों के लिए बाहरी V2Ray बाइनरी पर निर्भर है
उन्नत सेटअप के बिना मूल HTTP अनुरोधों के लिए उपयुक्त नहीं
मूल README
संबंधित सोर्स रिपॉज़िटरी के मूल README का स्नैपशॉट। नवीनतम सामग्री के लिए रिपॉज़िटरी देखें।
import'package:flutter_v2ray/flutter_v2ray.dart';
// v2ray share link like vmess://, vless://, ...String link = "link_here";
V2RayURL parser = FlutterV2ray.parseFromURL(link);
// Remark of the v2rayprint(parser.remark);
// generate full v2ray configuration (json)print(parser.getFullConfiguration());
Edit Configuration
// Change v2ray listening port
parser.inbound['port'] = 10890;
// Change v2ray listening host
parser.inbound['listen'] = '0.0.0.0';
// Change v2ray log level
parser.log['loglevel'] = 'info';
// Change v2ray dns
parser.dns = {
"servers": ["1.1.1.1"]
};
// and ...// generate configuration with new settings
parser.getFullConfiguration()
Making V2Ray connection
import'package:flutter_v2ray/flutter_v2ray.dart';
finalFlutterV2ray flutterV2ray = FlutterV2ray(
onStatusChanged: (status) {
// do something
},
);
// You must initialize V2Ray before using it.await flutterV2ray.initializeV2Ray();
// v2ray share link like vmess://, vless://, ...String link = "link_here";
V2RayURL parser = FlutterV2ray.parseFromURL(link);
// Get Server Delayprint('${flutterV2ray.getServerDelay(config: parser.getFullConfiguration())}ms');
// Permission is not required if you using proxy onlyif (await flutterV2ray.requestPermission()){
flutterV2ray.startV2Ray(
remark: parser.remark,
// The use of parser.getFullConfiguration() is not mandatory,// and you can enter the desired V2Ray configuration in JSON format
config: parser.getFullConfiguration(),
blockedApps: null,
bypassSubnets: null,
proxyOnly: false,
);
}
// Disconnect
flutterV2ray.stopV2Ray();
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.release
}
}
And replace it with the following configuration info:
splits {
abi {
enable true
reset()
//noinspection ChromeOsAbiSupport
include "x86_64", "armeabi-v7a", "arm64-v8a"
universalApk true
}
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.release
ndk {
//noinspection ChromeOsAbiSupport
abiFilters "x86_64", "armeabi-v7a", "arm64-v8a"
debugSymbolLevel 'FULL'
}
}
}