पैकेज, रिपॉज़िटरी और ऐप श्रेणियाँ खोजें

पैकेज विवरणv2.0.0

flutter_v2ray

एक प्लगइन जो आपको v2ray कनेक्शन बनाने की अनुमति देता है (VPN मोड और प्रॉक्सी केवल)

AndroidiOS
30-दिन डाउनलोड
2.2 हज़ार
लाइक
98
Pub अंक
160

पैकेज इंस्टॉल करें

flutter pub add flutter_v2ray

पैकेज अवलोकन

सार्वजनिक जानकारी से बना चयन मार्गदर्शन। केवल संदर्भ हेतु।

flutter_v2ray एक Flutter प्लगइन है जो Android और iOS उपकरणों पर V2Ray कनेक्टिविटी सक्षम करता है, जिसमें वीपीएन मोड और प्रॉक्सी-केवल कॉन्फ़िगरेशन दोनों शामिल हैं। यह डेवलपर्स को अपने ऐप्स में सुरक्षित, कस्टमाइज़ेबल नेटवर्क रूटिंग को एम्बेड करने की अनुमति देता है, जिससे प्रतिबंधित सामग्री या निजी नेटवर्क सेवाओं तक पहुंच की अनुमति मिलती है। प्लगइन वीपीएन कनेक्शन को स्थापित और प्रबंधित करने के लिए एक सीधा इंटरफ़ेस प्रदान करता है, जो विश्वसनीय प्रदर्शन के लिए मूल प्लेटफ़ॉर्म क्षमताओं का उपयोग करता है। यह उन ऐप्स में विशेष रूप से उपयोगी है जिनमें उन्नत नेटवर्किंग विशेषताओं और मजबूत गोपनीयता नियंत्रण की आवश्यकता होती है।

उपयोग

  • सुरक्षित एप्लिकेशन से सर्वर संचार
  • क्षेत्रीय सामग्री प्रतिबंधों को बाधित करना
  • गोपनीयता-केंद्रित एप्लिकेशन बनाना
  • कस्टम प्रॉक्सी कॉन्फ़िगरेशन को एकीकृत करना
  • एन्क्रिप्टेड नेटवर्क टनल को सक्षम करना

मुख्य विशेषताएँ

  • VPN मोड और प्रॉक्सी केवल कनेक्शन प्रकार दोनों का समर्थन करता है
  • क्रॉस-प्लेटफ़ॉर्म सुविधा (Android और iOS)
  • स्थिर प्रदर्शन के लिए मूल एकीकरण
  • संपर्क प्रबंधन के लिए सरल API
  • V2Ray JSON सेटिंग्स के माध्यम से कॉन्फ़िगरेबल

इनके लिए उपयुक्त

  • सुरक्षित संचार ऐप बना रहे विकासक
  • नेटवर्क प्रतिबंधों को बाधित करने वाले ऐप्स
  • गोपनीयता-उन्मुख मोबाइल एप्लिकेशन
  • नेटवर्क टूल एंटीग्रेशन
  • कस्टम प्रॉक्सी समाधान

विचार योग्य बातें

  • Android और iOS पर उचित सिस्टम की अनुमति की आवश्यकता होती है
  • जटिल V2Ray सेटअप के लिए अतिरिक्त कॉन्फ़िगरेशन की आवश्यकता हो सकती है
  • VPN कार्यक्षमता के कारण संभावित ऐप स्टोर समीक्षा चुनौतियाँ
  • कुछ संचालनों के लिए बाहरी V2Ray बाइनरी पर निर्भर है
  • उन्नत सेटअप के बिना मूल HTTP अनुरोधों के लिए उपयुक्त नहीं

मूल README

संबंधित सोर्स रिपॉज़िटरी के मूल README का स्नैपशॉट। नवीनतम सामग्री के लिए रिपॉज़िटरी देखें।

flutter_v2ray

Open Source Love

Table of contents

Change logs

1.0.10
  • update xray core version to 25.3.6
see more

Features

  • Run V2Ray Proxy & VPN Mode
  • Get Server Delay
  • Parsing V2Ray sharing links and making changes to them

Supported Platforms

Platform Status Info
Android Done ✅ Xray 25.3.6
IOS Done ✅ For purchase: t.me/blueboy_tm
Desktop Done ✅ For purchase: t.me/blueboy_tm

Get started

Add dependency

You can use the command to add flutter_v2ray as a dependency with the latest stable version:

$ flutter pub add flutter_v2ray

Or you can manually add flutter_v2ray into the dependencies section in your pubspec.yaml:

dependencies:
  flutter_v2ray: ^replace-with-latest-version

Examples

URL Parser
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 v2ray
print(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';

final FlutterV2ray 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 Delay
print('${flutterV2ray.getServerDelay(config: parser.getFullConfiguration())}ms');

// Permission is not required if you using proxy only
if (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();

Bypass LAN Traffic
final List<String> subnets = [
    "0.0.0.0/5",
    "8.0.0.0/7",
    "11.0.0.0/8",
    "12.0.0.0/6",
    "16.0.0.0/4",
    "32.0.0.0/3",
    "64.0.0.0/2",
    "128.0.0.0/3",
    "160.0.0.0/5",
    "168.0.0.0/6",
    "172.0.0.0/12",
    "172.32.0.0/11",
    "172.64.0.0/10",
    "172.128.0.0/9",
    "173.0.0.0/8",
    "174.0.0.0/7",
    "176.0.0.0/4",
    "192.0.0.0/9",
    "192.128.0.0/11",
    "192.160.0.0/13",
    "192.169.0.0/16",
    "192.170.0.0/15",
    "192.172.0.0/14",
    "192.176.0.0/12",
    "192.192.0.0/10",
    "193.0.0.0/8",
    "194.0.0.0/7",
    "196.0.0.0/6",
    "200.0.0.0/5",
    "208.0.0.0/4",
    "240.0.0.0/4",
];

flutterV2ray.startV2Ray(
    remark: parser.remark,
    config: parser.getFullConfiguration(),
    blockedApps: null,
    bypassSubnets: subnets,
    proxyOnly: false,
);

Android configuration before publish to Google Play🚀

gradle.preperties
  • add this line
android.bundle.enableUncompressedNativeLibs = false
build.gradle (app)
  • Find the buildTypes block:
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'
            }
        }
    }

More examples

Credits

badvpn (tun2socks) Copyright (C) Ambroz Bizjak

All rights reserved.

Donation

If you liked this package, you can support me with one of the following links.

Buy me a coffee

Buy Me A Coffee

Cryptocurrency
  • BTC:
    • bc1qrtq0ygmxw7meak3ukvxn03za2j7t7s4uxuujct
  • Tron
    • TVQQdim3pxa4XoZyRRVHQ8GsY42rEgB4ow
  • USDT
    • TRC20
      • TVQQdim3pxa4XoZyRRVHQ8GsY42rEgB4ow
    • ERC20
      • 0xD5d931BB40F02Ed45172faebD805B3f0ba70Fe73
  • DogeCoin
    • DNFaHFzmUfeUB6NFgQX1sLn9q8kknTmKd8

श्रेणियाँ

निर्भरताएँ

निर्भरता सूची 1 आइटम

  • plugin_platform_interface^2.0.2

सोर्स रिपॉज़िटरी

इस पैकेज का उपयोग करने वाले प्रोजेक्ट