diff --git a/.gitignore b/.gitignore index 1ad55dd..cfdcff9 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ .packages .pub/ +pubspec.lock build/ *.iml @@ -12,14 +13,6 @@ build/ .flutter-plugins-dependencies flutter_export_environment.sh -android/.classpath -android/.project -android/.settings/org.eclipse.buildship.core.prefs -example/android/.project -example/android/.settings/org.eclipse.buildship.core.prefs -example/android/app/.classpath -example/android/app/.project -example/android/app/.settings/org.eclipse.buildship.core.prefs example/ios/.symlinks example/Podfile.lock .last_build_id diff --git a/CHANGELOG.md b/CHANGELOG.md index 03eed07..64a1af9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +# Unreleased +* Fix #453 + # 3.6.1+4 * Android P support diff --git a/android/build.gradle b/android/build.gradle index 5978f4b..2013a39 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -41,7 +41,6 @@ android { } dependencies { - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" api 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:6.8.0' implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.1' implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.1' diff --git a/android/src/main/kotlin/com/jarvan/fluwx/FluwxPlugin.kt b/android/src/main/kotlin/com/jarvan/fluwx/FluwxPlugin.kt index acec46b..742a087 100644 --- a/android/src/main/kotlin/com/jarvan/fluwx/FluwxPlugin.kt +++ b/android/src/main/kotlin/com/jarvan/fluwx/FluwxPlugin.kt @@ -1,7 +1,6 @@ package com.jarvan.fluwx import android.content.Intent -import android.util.Log import androidx.annotation.NonNull import com.jarvan.fluwx.handlers.* import com.tencent.mm.opensdk.modelbiz.SubscribeMessage @@ -18,31 +17,12 @@ import io.flutter.plugin.common.MethodChannel.Result import io.flutter.plugin.common.PluginRegistry import com.tencent.mm.opensdk.modelbiz.WXOpenCustomerServiceChat - - - /** FluwxPlugin */ class FluwxPlugin : FlutterPlugin, MethodCallHandler, ActivityAware,PluginRegistry.NewIntentListener { - companion object { - var callingChannel:MethodChannel? = null // 主动获取的启动参数 var extMsg:String? = null - - @JvmStatic - fun registerWith(registrar: PluginRegistry.Registrar) { - val channel = MethodChannel(registrar.messenger(), "com.jarvanmo/fluwx") - val authHandler = FluwxAuthHandler(channel) - WXAPiHandler.setContext(registrar.activity().applicationContext) - channel.setMethodCallHandler(FluwxPlugin().apply { - this.fluwxChannel = channel - this.authHandler = authHandler - this.shareHandler = FluwxShareHandlerCompat(registrar).apply { - permissionHandler = PermissionHandler(registrar.activity()) - } - }) - } } private var shareHandler: FluwxShareHandler? = null @@ -51,9 +31,9 @@ class FluwxPlugin : FlutterPlugin, MethodCallHandler, ActivityAware,PluginRegist private var fluwxChannel: MethodChannel? = null - private fun handelIntent(intent:Intent?){ - val action = intent?.action - val dataString = intent?.dataString + private fun handelIntent(intent: Intent) { + val action = intent.action + val dataString = intent.dataString if (Intent.ACTION_VIEW == action) { extMsg = dataString } @@ -64,11 +44,14 @@ class FluwxPlugin : FlutterPlugin, MethodCallHandler, ActivityAware,PluginRegist channel.setMethodCallHandler(this) fluwxChannel = channel authHandler = FluwxAuthHandler(channel) - shareHandler = FluwxShareHandlerEmbedding(flutterPluginBinding.flutterAssets, flutterPluginBinding.applicationContext) + shareHandler = FluwxShareHandlerEmbedding( + flutterPluginBinding.flutterAssets, + flutterPluginBinding.applicationContext + ) } override fun onMethodCall(@NonNull call: MethodCall, @NonNull result: Result) { - FluwxPlugin.callingChannel = fluwxChannel + callingChannel = fluwxChannel when { call.method == "registerApp" -> WXAPiHandler.registerApp(call, result) call.method == "sendAuth" -> authHandler?.sendAuth(call, result) @@ -112,19 +95,18 @@ class FluwxPlugin : FlutterPlugin, MethodCallHandler, ActivityAware,PluginRegist } - private fun getExtMsg(result: MethodChannel.Result) { + private fun getExtMsg(result: Result) { result.success(extMsg) extMsg = null } - private fun pay(call: MethodCall, result: MethodChannel.Result) { + private fun pay(call: MethodCall, result: Result) { if (WXAPiHandler.wxApi == null) { - result.error("Unassigned WxApi", "please config wxapi first", null) + result.error("Unassigned WxApi", "please config wxapi first", null) return } else { - -// 将该app注册到微信 + // 将该app注册到微信 val request = PayReq() request.appId = call.argument("appId") request.partnerId = call.argument("partnerId") @@ -140,7 +122,7 @@ class FluwxPlugin : FlutterPlugin, MethodCallHandler, ActivityAware,PluginRegist } } - private fun payWithHongKongWallet(call: MethodCall, result: MethodChannel.Result) { + private fun payWithHongKongWallet(call: MethodCall, result: Result) { val prepayId = call.argument("prepayId") ?: "" val request = WXOpenBusinessWebview.Req() request.businessType = 1 @@ -192,7 +174,7 @@ class FluwxPlugin : FlutterPlugin, MethodCallHandler, ActivityAware,PluginRegist result.success(WXAPiHandler.wxApi?.sendReq(req)) } - private fun subScribeMsg(call: MethodCall, result: MethodChannel.Result) { + private fun subScribeMsg(call: MethodCall, result: Result) { val appId = call.argument("appId") val scene = call.argument("scene") val templateId = call.argument("templateId") @@ -207,9 +189,9 @@ class FluwxPlugin : FlutterPlugin, MethodCallHandler, ActivityAware,PluginRegist result.success(b) } - private fun launchMiniProgram(call: MethodCall, result: MethodChannel.Result) { + private fun launchMiniProgram(call: MethodCall, result: Result) { val req = WXLaunchMiniProgram.Req() - req.userName = call.argument("userName") // 填小程序原始id + req.userName = call.argument("userName") // 填小程序原始id req.path = call.argument("path") ?: "" //拉起小程序页面的可带参路径,不填默认拉起小程序首页 val type = call.argument("miniProgramType") ?: 0 req.miniprogramType = when (type) { @@ -218,12 +200,12 @@ class FluwxPlugin : FlutterPlugin, MethodCallHandler, ActivityAware,PluginRegist else -> WXLaunchMiniProgram.Req.MINIPTOGRAM_TYPE_RELEASE }// 可选打开 开发版,体验版和正式版 val done = WXAPiHandler.wxApi?.sendReq(req) - result.success(WXAPiHandler.wxApi?.sendReq(req)) + result.success(done) } - private fun openWXApp(result: MethodChannel.Result) = result.success(WXAPiHandler.wxApi?.openWXApp()) + private fun openWXApp(result: Result) = result.success(WXAPiHandler.wxApi?.openWXApp()) - override fun onNewIntent(intent: Intent?): Boolean { + override fun onNewIntent(intent: Intent): Boolean { handelIntent(intent) return false } diff --git a/android/src/main/kotlin/com/jarvan/fluwx/handlers/FluwxShareHandler.kt b/android/src/main/kotlin/com/jarvan/fluwx/handlers/FluwxShareHandler.kt index 017e589..a8ba4f8 100644 --- a/android/src/main/kotlin/com/jarvan/fluwx/handlers/FluwxShareHandler.kt +++ b/android/src/main/kotlin/com/jarvan/fluwx/handlers/FluwxShareHandler.kt @@ -6,7 +6,6 @@ import android.content.Intent import android.content.pm.PackageManager import android.content.res.AssetFileDescriptor import android.net.Uri -import android.text.TextUtils import androidx.core.content.ContextCompat import androidx.core.content.FileProvider import com.jarvan.fluwx.io.* @@ -15,7 +14,6 @@ import com.tencent.mm.opensdk.modelmsg.* import io.flutter.embedding.engine.plugins.FlutterPlugin import io.flutter.plugin.common.MethodCall import io.flutter.plugin.common.MethodChannel -import io.flutter.plugin.common.PluginRegistry import kotlinx.coroutines.* import java.io.File import java.util.* @@ -36,7 +34,6 @@ internal class FluwxShareHandlerEmbedding(private val flutterAssets: FlutterPlug } else { flutterAssets.getAssetFilePathBySubpath(uri.path.orEmpty(), packageName) } - context.assets.openFd(subPath) } @@ -45,23 +42,6 @@ internal class FluwxShareHandlerEmbedding(private val flutterAssets: FlutterPlug override var permissionHandler: PermissionHandler? = null } -internal class FluwxShareHandlerCompat(private val registrar: PluginRegistry.Registrar) : FluwxShareHandler { - override val assetFileDescriptor: (String) -> AssetFileDescriptor = { - val uri = Uri.parse(it) - val packageName = uri.getQueryParameter("package") - val key = if (TextUtils.isEmpty(packageName)) { - registrar.lookupKeyForAsset(uri.path) - } else { - registrar.lookupKeyForAsset(uri.path, packageName) - } - context.assets.openFd(key) - } - - override val context: Context = registrar.context().applicationContext - override val job: Job = Job() - override var permissionHandler: PermissionHandler? = null -} - internal interface FluwxShareHandler : CoroutineScope { companion object { const val SHARE_IMAGE_THUMB_LENGTH = 32 * 1024 @@ -317,7 +297,7 @@ internal interface FluwxShareHandler : CoroutineScope { } - private val supportFileProvider: Boolean get() = WXAPiHandler.wxApi?.wxAppSupportAPI ?: 0 >= 0x27000D00 + private val supportFileProvider: Boolean get() = (WXAPiHandler.wxApi?.wxAppSupportAPI ?: 0) >= 0x27000D00 private val targetHigherThanN: Boolean get() = android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N val context: Context diff --git a/example/.gitignore b/example/.gitignore index fa6b4aa..b23aa56 100644 --- a/example/.gitignore +++ b/example/.gitignore @@ -8,6 +8,7 @@ .buildlog/ .history .svn/ +**/Podfile.lock # IntelliJ related *.iml @@ -22,6 +23,8 @@ # Flutter/Dart/Pub related **/doc/api/ +**/ios/Flutter/.last_build_id +**/ios/Flutter/flutter_export_environment.sh .dart_tool/ .flutter-plugins .flutter-plugins-dependencies @@ -30,10 +33,11 @@ .pub/ /build/ -flutter_export_environment.sh - # Web related lib/generated_plugin_registrant.dart -# Exceptions to above rules. -!/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages +# Symbolication related +app.*.symbols + +# Obfuscation related +app.*.map.json diff --git a/example/android/.gitignore b/example/android/.gitignore index dae0ba0..628a264 100644 --- a/example/android/.gitignore +++ b/example/android/.gitignore @@ -1,4 +1,7 @@ -#gradle-wrapper.jar +gradle-wrapper.jar +**.classpath +**.project +**.settings /.gradle /captures/ /gradlew diff --git a/example/android/app/src/debug/AndroidManifest.xml b/example/android/app/src/debug/AndroidManifest.xml deleted file mode 100644 index 39cef14..0000000 --- a/example/android/app/src/debug/AndroidManifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - diff --git a/example/android/app/src/main/AndroidManifest.xml b/example/android/app/src/main/AndroidManifest.xml index a42e903..024d99f 100644 --- a/example/android/app/src/main/AndroidManifest.xml +++ b/example/android/app/src/main/AndroidManifest.xml @@ -10,6 +10,7 @@ + - - - diff --git a/example/android/build.gradle b/example/android/build.gradle index f3b36dc..1743f09 100644 --- a/example/android/build.gradle +++ b/example/android/build.gradle @@ -1,12 +1,12 @@ buildscript { - ext.kotlin_version = '1.5.21' + ext.kotlin_version = '1.6.10' repositories { google() mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:4.1.3' + classpath 'com.android.tools.build:gradle:7.0.4' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } diff --git a/example/android/gradle/wrapper/gradle-wrapper.jar b/example/android/gradle/wrapper/gradle-wrapper.jar deleted file mode 100644 index 13372ae..0000000 Binary files a/example/android/gradle/wrapper/gradle-wrapper.jar and /dev/null differ diff --git a/example/android/gradle/wrapper/gradle-wrapper.properties b/example/android/gradle/wrapper/gradle-wrapper.properties index 2c46d4c..90f5c61 100644 --- a/example/android/gradle/wrapper/gradle-wrapper.properties +++ b/example/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip diff --git a/example/android/gradlew b/example/android/gradlew deleted file mode 100755 index 9d82f78..0000000 --- a/example/android/gradlew +++ /dev/null @@ -1,160 +0,0 @@ -#!/usr/bin/env bash - -############################################################################## -## -## Gradle start up script for UN*X -## -############################################################################## - -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" - -APP_NAME="Gradle" -APP_BASE_NAME=`basename "$0"` - -# Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD="maximum" - -warn ( ) { - echo "$*" -} - -die ( ) { - echo - echo "$*" - echo - exit 1 -} - -# OS specific support (must be 'true' or 'false'). -cygwin=false -msys=false -darwin=false -case "`uname`" in - CYGWIN* ) - cygwin=true - ;; - Darwin* ) - darwin=true - ;; - MINGW* ) - msys=true - ;; -esac - -# Attempt to set APP_HOME -# Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi -done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >/dev/null -APP_HOME="`pwd -P`" -cd "$SAVED" >/dev/null - -CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar - -# Determine the Java command to use to start the JVM. -if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - if [ ! -x "$JAVACMD" ] ; then - die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -else - JAVACMD="java" - which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." -fi - -# Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then - MAX_FD_LIMIT=`ulimit -H -n` - if [ $? -eq 0 ] ; then - if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then - MAX_FD="$MAX_FD_LIMIT" - fi - ulimit -n $MAX_FD - if [ $? -ne 0 ] ; then - warn "Could not set maximum file descriptor limit: $MAX_FD" - fi - else - warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" - fi -fi - -# For Darwin, add options to specify how the application appears in the dock -if $darwin; then - GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" -fi - -# For Cygwin, switch paths to Windows format before running java -if $cygwin ; then - APP_HOME=`cygpath --path --mixed "$APP_HOME"` - CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` - JAVACMD=`cygpath --unix "$JAVACMD"` - - # We build the pattern for arguments to be converted via cygpath - ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` - SEP="" - for dir in $ROOTDIRSRAW ; do - ROOTDIRS="$ROOTDIRS$SEP$dir" - SEP="|" - done - OURCYGPATTERN="(^($ROOTDIRS))" - # Add a user-defined pattern to the cygpath arguments - if [ "$GRADLE_CYGPATTERN" != "" ] ; then - OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" - fi - # Now convert the arguments - kludge to limit ourselves to /bin/sh - i=0 - for arg in "$@" ; do - CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` - CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option - - if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition - eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` - else - eval `echo args$i`="\"$arg\"" - fi - i=$((i+1)) - done - case $i in - (0) set -- ;; - (1) set -- "$args0" ;; - (2) set -- "$args0" "$args1" ;; - (3) set -- "$args0" "$args1" "$args2" ;; - (4) set -- "$args0" "$args1" "$args2" "$args3" ;; - (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; - (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; - (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; - (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; - (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; - esac -fi - -# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules -function splitJvmOpts() { - JVM_OPTS=("$@") -} -eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS -JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" - -exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" diff --git a/example/android/gradlew.bat b/example/android/gradlew.bat deleted file mode 100644 index aec9973..0000000 --- a/example/android/gradlew.bat +++ /dev/null @@ -1,90 +0,0 @@ -@if "%DEBUG%" == "" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - -set DIRNAME=%~dp0 -if "%DIRNAME%" == "" set DIRNAME=. -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto init - -echo. -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto init - -echo. -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:init -@rem Get command-line arguments, handling Windowz variants - -if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args - -:win9xME_args -@rem Slurp the command line arguments. -set CMD_LINE_ARGS= -set _SKIP=2 - -:win9xME_args_slurp -if "x%~1" == "x" goto execute - -set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ - -:execute -@rem Setup the command line - -set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar - -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% - -:end -@rem End local scope for the variables with windows NT shell -if "%ERRORLEVEL%"=="0" goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 -exit /b 1 - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega diff --git a/example/ios/.gitignore b/example/ios/.gitignore index e96ef60..87e49da 100644 --- a/example/ios/.gitignore +++ b/example/ios/.gitignore @@ -11,6 +11,7 @@ Icon? **/Pods/ **/.symlinks/ +Podfile.lock profile xcuserdata **/.generated/ diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock deleted file mode 100644 index d47636f..0000000 --- a/example/ios/Podfile.lock +++ /dev/null @@ -1,29 +0,0 @@ -PODS: - - Flutter (1.0.0) - - fluwx (0.0.1): - - Flutter - - WechatOpenSDK_Fuck (~> 1.9.2) - - WechatOpenSDK_Fuck (1.9.2) - -DEPENDENCIES: - - Flutter (from `Flutter`) - - fluwx (from `.symlinks/plugins/fluwx/ios`) - -SPEC REPOS: - trunk: - - WechatOpenSDK_Fuck - -EXTERNAL SOURCES: - Flutter: - :path: Flutter - fluwx: - :path: ".symlinks/plugins/fluwx/ios" - -SPEC CHECKSUMS: - Flutter: 434fef37c0980e73bb6479ef766c45957d4b510c - fluwx: c192ef1ea3617badb813fa1a761ffc5c9c12208a - WechatOpenSDK_Fuck: aa8f4b0af902837e887a1d40c62f06c060c1dc98 - -PODFILE CHECKSUM: 8e679eca47255a8ca8067c4c67aab20e64cb974d - -COCOAPODS: 1.10.0 diff --git a/example/lib/sign_auto_deduct_page.dart b/example/lib/sign_auto_deduct_page.dart index b7905fb..f158296 100644 --- a/example/lib/sign_auto_deduct_page.dart +++ b/example/lib/sign_auto_deduct_page.dart @@ -100,7 +100,7 @@ class _SignAutoDeductPageState extends State { mchId: mchId.text, planId: planId.text , contractCode: contractCode.text, - requestSerial: requestSerial.text ?? "", + requestSerial: requestSerial.text, contractDisplayAccount: contractDisplayAccount.text, notifyUrl: notifyUrl.text, version: version.text, diff --git a/example/pubspec.lock b/example/pubspec.lock deleted file mode 100644 index 070ad93..0000000 --- a/example/pubspec.lock +++ /dev/null @@ -1,168 +0,0 @@ -# Generated by pub -# See https://dart.dev/tools/pub/glossary#lockfile -packages: - async: - dependency: transitive - description: - name: async - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.8.2" - boolean_selector: - dependency: transitive - description: - name: boolean_selector - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.0" - characters: - dependency: "direct main" - description: - name: characters - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.2.0" - charcode: - dependency: transitive - description: - name: charcode - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.3.1" - clock: - dependency: transitive - description: - name: clock - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.1.0" - collection: - dependency: transitive - description: - name: collection - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.15.0" - cupertino_icons: - dependency: "direct main" - description: - name: cupertino_icons - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.0.4" - fake_async: - dependency: transitive - description: - name: fake_async - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.2.0" - flutter: - dependency: "direct main" - description: flutter - source: sdk - version: "0.0.0" - flutter_test: - dependency: "direct dev" - description: flutter - source: sdk - version: "0.0.0" - fluwx: - dependency: "direct dev" - description: - path: ".." - relative: true - source: path - version: "3.6.1+4" - matcher: - dependency: transitive - description: - name: matcher - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.12.11" - material_color_utilities: - dependency: transitive - description: - name: material_color_utilities - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.1.3" - meta: - dependency: transitive - description: - name: meta - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.7.0" - path: - dependency: transitive - description: - name: path - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.8.0" - sky_engine: - dependency: transitive - description: flutter - source: sdk - version: "0.0.99" - source_span: - dependency: transitive - description: - name: source_span - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.8.1" - stack_trace: - dependency: transitive - description: - name: stack_trace - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.10.0" - stream_channel: - dependency: transitive - description: - name: stream_channel - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.0" - string_scanner: - dependency: transitive - description: - name: string_scanner - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.1.0" - term_glyph: - dependency: transitive - description: - name: term_glyph - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.2.0" - test_api: - dependency: transitive - description: - name: test_api - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.4.8" - typed_data: - dependency: transitive - description: - name: typed_data - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.3.0" - vector_math: - dependency: transitive - description: - name: vector_math - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.1" -sdks: - dart: ">=2.14.0 <3.0.0" - flutter: ">=1.12.0" diff --git a/pubspec.lock b/pubspec.lock deleted file mode 100644 index 420a408..0000000 --- a/pubspec.lock +++ /dev/null @@ -1,154 +0,0 @@ -# Generated by pub -# See https://dart.dev/tools/pub/glossary#lockfile -packages: - async: - dependency: transitive - description: - name: async - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.8.2" - boolean_selector: - dependency: transitive - description: - name: boolean_selector - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.0" - characters: - dependency: transitive - description: - name: characters - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.2.0" - charcode: - dependency: transitive - description: - name: charcode - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.3.1" - clock: - dependency: transitive - description: - name: clock - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.1.0" - collection: - dependency: transitive - description: - name: collection - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.15.0" - fake_async: - dependency: transitive - description: - name: fake_async - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.2.0" - flutter: - dependency: "direct main" - description: flutter - source: sdk - version: "0.0.0" - flutter_test: - dependency: "direct dev" - description: flutter - source: sdk - version: "0.0.0" - matcher: - dependency: transitive - description: - name: matcher - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.12.11" - material_color_utilities: - dependency: transitive - description: - name: material_color_utilities - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.1.3" - meta: - dependency: transitive - description: - name: meta - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.7.0" - path: - dependency: transitive - description: - name: path - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.8.0" - sky_engine: - dependency: transitive - description: flutter - source: sdk - version: "0.0.99" - source_span: - dependency: transitive - description: - name: source_span - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.8.1" - stack_trace: - dependency: transitive - description: - name: stack_trace - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.10.0" - stream_channel: - dependency: transitive - description: - name: stream_channel - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.0" - string_scanner: - dependency: transitive - description: - name: string_scanner - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.1.0" - term_glyph: - dependency: transitive - description: - name: term_glyph - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.2.0" - test_api: - dependency: transitive - description: - name: test_api - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.4.8" - typed_data: - dependency: transitive - description: - name: typed_data - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.3.0" - vector_math: - dependency: transitive - description: - name: vector_math - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.1" -sdks: - dart: ">=2.14.0 <3.0.0" - flutter: ">=1.12.0"