# wan_android **Repository Path**: WS0119/wan_android ## Basic Information - **Project Name**: wan_android - **Description**: flutter 版 wanAndroid - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-10-26 - **Last Updated**: 2025-05-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### wan_android - [ ] UI - [ ] 路由 - [x] 网络接口请求 ### 常用指令 - 手机端预览:flutter run -d chrome --web-hostname 192.168.0.107 --web-port 3002 - 设置启动端口: ```bash flutter run -d chrome --web-port=3002 ``` - 开发环境下屏蔽跨域报错: 解决 web 端,请求跨域问题 ```bash flutter run -d chrome --web-renderer canvaskit --web-browser-flag "--disable-web-security" ``` - 打包构建 apk ```bash flutter build apk --split-per-abi ``` - 打包构建 web ```bash flutter build web # wasm 版本 flutter build web --wasm ``` ### Android版本及SDK版本参考: ```bash # 以下是一些常见的minSdkVersion值及其对应的Android版本: 16: Android 4.1 (Jelly Bean) 17: Android 4.2 (Jelly Bean) 18: Android 4.3 (Jelly Bean) 19: Android 4.4 (KitKat) 21: Android 5.0 (Lollipop) 22: Android 5.1 (Lollipop) 23: Android 6.0 (Marshmallow) 24: Android 7.0 (Nougat) 25: Android 7.1 (Nougat) 26: Android 8.0 (Oreo) 27: Android 8.1 (Oreo) 28: Android 9.0 (Pie) 29: Android 10.0 (Q) ``` ### 通过原生方法打开蓝牙设置: - 详解:在 flutter_blue_plus 插件中,直接打开蓝牙设置界面并不是插件本身提供的功能。不过,你可以使用平台通道(Platform Channels)来实现这一功能。如下: - Android 中:android/app/src/main/kotlin/com/example/wan_android/MainActivity.kt ```kotlin import android.content.Intent import android.os.Bundle import io.flutter.embedding.android.FlutterActivity import io.flutter.plugin.common.MethodChannel class MainActivity: FlutterActivity() { private val CHANNEL = "com.example.bluetooth/settings" override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) MethodChannel(flutterEngine?.dartExecutor?.binaryMessenger, CHANNEL).setMethodCallHandler { call, result -> if (call.method == "openBluetoothSettings") { val intent = Intent(android.provider.Settings.ACTION_BLUETOOTH_SETTINGS) startActivity(intent) result.success(null) } else { result.notImplemented() } } } } ``` - IOS 中:ios/Runner/AppDelegate.swift ```swift import UIKit import Flutter @UIApplicationMain @objc class AppDelegate: FlutterAppDelegate { override func application( _ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? ) -> Bool { let controller: FlutterViewController = window?.rootViewController as! FlutterViewController let channel = FlutterMethodChannel(name: "com.example.bluetooth/settings", binaryMessenger: controller.binaryMessenger) channel.setMethodCallHandler { (call: FlutterMethodCall, result: @escaping FlutterResult) -> Void in if (call.method == "openBluetoothSettings") { if let url = URL(string: "App-Prefs:root=Bluetooth") { if UIApplication.shared.canOpenURL(url) { UIApplication.shared.open(url, options: [:], completionHandler: nil) result(nil) } else { result(FlutterError(code: "UNAVAILABLE", message: "Cannot open settings", details: nil)) } } else { result(FlutterError(code: "UNAVAILABLE", message: "Cannot open settings", details: nil)) } } else { result(FlutterMethodNotImplemented) } } GeneratedPluginRegistrant.register(with: self) return super.application(application, didFinishLaunchingWithOptions: launchOptions) } } ``` ### 在线网址:将根据响应 json 数据,生成对应的 dart 类 1. https://app.quicktype.io/ 2. https://javiercbk.github.io/json_to_dart/ ### wanAndroid在线api - 地址:https://wanandroid.com/blog/show/2 ### 解决 flutter run 卡住: - 更改gradle镜像下载地址,加速下载:distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-8.3-all.zip - 路径: android/gradle/wrapper/gradle-wrapper.properties ### postman 设置 Cookie:loginUserName=dev001;loginUserPassword=dev001 === ### flutter 官方参考 This project is a starting point for a Flutter application. A few resources to get you started if this is your first Flutter project: - [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) - [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) For help getting started with Flutter development, view the [online documentation](https://docs.flutter.dev/), which offers tutorials, samples, guidance on mobile development, and a full API reference.