主頁 > 移動端開發 > Flutter 集成騰迅 IM Demo 時不同的編譯配置的連環坑 2021-12-17

Flutter 集成騰迅 IM Demo 時不同的編譯配置的連環坑 2021-12-17

2021-12-18 08:49:40 移動端開發

java_objectc

java

坑一 minSdkVersion 19

?  java_objectc flutter run
Multiple devices found:
sdk gphone x86 (mobile) ? emulator-5554                        ? android-x86 ? Android 11 (API 30) (emulator)
iPhone 8 Plus (mobile)  ? C235F27E-F408-44E4-8223-43F4C4846E28 ? ios         ? com.apple.CoreSimulator.SimRuntime.iOS-14-4 (simulator)
[1]: sdk gphone x86 (emulator-5554)
[2]: iPhone 8 Plus (C235F27E-F408-44E4-8223-43F4C4846E28)
Please choose one (To quit, press "q/Q"): 1
Running "flutter pub get" in java_objectc...                           ?
 1,411ms
Using hardware rendering with device sdk gphone x86. If you notice graphics artifacts, consider enabling software rendering with "--enable-software-rendering".
Launching lib/main.dart on sdk gphone x86 in debug mode...
/Users/swot/learn/flutter/java_objectc/android/app/src/debug/AndroidManifest.xml Error:
	uses-sdk:minSdkVersion 16 cannot be smaller than version 19 declared in library [:flutter_plugin_record] /Users/swot/learn/flutter/java_objectc/build/flutter_plugin_record/intermediates/library_manifest/debug/AndroidManifest.xml as the library might be using APIs not available in 16
	Suggestion: use a compatible library with a minSdk of at most 16,
		or increase this project's minSdk version to at least 19,
		or use tools:overrideLibrary="record.wilson.flutter.com.flutter_plugin_record" to force usage (may lead to runtime failures)

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processDebugMainManifest'.
> Manifest merger failed : uses-sdk:minSdkVersion 16 cannot be smaller than version 19 declared in library [:flutter_plugin_record] /Users/swot/learn/flutter/java_objectc/build/flutter_plugin_record/intermediates/library_manifest/debug/AndroidManifest.xml as the library might be using APIs not available in 16
  	Suggestion: use a compatible library with a minSdk of at most 16,
  		or increase this project's minSdk version to at least 19,
  		or use tools:overrideLibrary="record.wilson.flutter.com.flutter_plugin_record" to force usage (may lead to runtime failures)

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 37s
Running Gradle task 'assembleDebug'...                             67.5s

The plugin flutter_plugin_record requires a higher Android SDK version.
Fix this issue by adding the following to the file /Users/swot/learn/flutter/java_objectc/android/app/build.gradle:
android {
  defaultConfig {
    minSdkVersion 19
  }
}


Note that your app won't be available to users running Android SDKs below 19.
Alternatively, try to find a version of this plugin that supports these lower versions of the Android SDK.
Exception: Gradle task assembleDebug failed with exit code 1

處理 minSdkVersion 19

nvim /Users/swot/learn/flutter/java_objectc/android/app/build.gradle

change 16 to 19

minSdkVersion 16
minSdkVersion 19

坑二 add ‘tools:replace=“android:label”’

?  java_objectc flutter run
Multiple devices found:
sdk gphone x86 (mobile) ? emulator-5554                        ? android-x86 ? Android 11 (API 30) (emulator)
iPhone 8 Plus (mobile)  ? C235F27E-F408-44E4-8223-43F4C4846E28 ? ios         ? com.apple.CoreSimulator.SimRuntime.iOS-14-4 (simulator)
[1]: sdk gphone x86 (emulator-5554)
[2]: iPhone 8 Plus (C235F27E-F408-44E4-8223-43F4C4846E28)
Please choose one (To quit, press "q/Q"): 1
Using hardware rendering with device sdk gphone x86. If you notice graphics artifacts, consider enabling software rendering with "--enable-software-rendering".
Launching lib/main.dart on sdk gphone x86 in debug mode...
/Users/swot/learn/flutter/java_objectc/android/app/src/debug/AndroidManifest.xml:4:9-37 Error:
	Attribute application@label value=(java_objectc) from AndroidManifest.xml:4:9-37
	is also present at [com.github.adrielcafe:AndroidAudioConverter:0.0.8] AndroidManifest.xml:11:18-50 value=(@string/app_name).
	Suggestion: add 'tools:replace="android:label"' to <application> element at AndroidManifest.xml:3:4-40:19 to override.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processDebugMainManifest'.
> Manifest merger failed : Attribute application@label value=(java_objectc) from AndroidManifest.xml:4:9-37
  	is also present at [com.github.adrielcafe:AndroidAudioConverter:0.0.8] AndroidManifest.xml:11:18-50 value=(@string/app_name).
  	Suggestion: add 'tools:replace="android:label"' to <application> element at AndroidManifest.xml:3:4-40:19 to override.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 34s
Running Gradle task 'assembleDebug'...                             64.6s
Exception: Gradle task assembleDebug failed with exit code 1

處理 add ‘tools:replace=“android:label”’

nvim android/app/src/debug/AndroidManifest.xml

更改內容如下:

package="com.example.java_objectc"> 更改為
package="com.example.java_objectc" xmlns:tools="http://schemas.android.com/tools">
注意專案名稱要對應

新增一行:
<application tools:replace="android:label" android:label="@string/app_name"></application>

坑三 Error while merging dex archives:

D8: Cannot fit requested classes in a single dex file (# methods: 70322 > 65536)
com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:
The number of method references in a .dex file cannot exceed 64K.

......

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:mergeDexDebug'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:
     The number of method references in a .dex file cannot exceed 64K.
     Learn how to resolve this issue at https://developer.android.com/tools/building/multidex.html

處理 Error while merging dex archives:

nvim /Users/swot/learn/flutter/java_objectc/android/app/build.gradle

defaultConfig 里新增一行

multiDexEnabled true

objectc

坑一 CocoaPods could not find compatible versions for pod “flutter_sound”:

[!] CocoaPods could not find compatible versions for pod "flutter_sound":
      In Podfile:
        flutter_sound (from `.symlinks/plugins/flutter_sound/ios`)

    Specs satisfying the `flutter_sound (from `.symlinks/plugins/flutter_sound/ios`)` dependency were found, but they required a higher minimum deployment target.

......

Error output from CocoaPods:
?

    [!] `<PBXGroup UUID=`97C146E51CF9000F007C117D`>` attempted to initialize an object with an unknown UUID. `CF3B75C9A7D2FA2A4C99F110` for attribute: `children`. This can be the result of a merge and the
    unknown UUID is being discarded.

    [!] Automatically assigning platform `iOS` with version `9.0` on target `Runner` because no platform was specified. Please specify a platform for this target in your Podfile. See
    `https://guides.cocoapods.org/syntax/podfile.html#platform`.

Error running pod install
Error launching application on iPhone 8 Plus.

處理 CocoaPods could not find compatible versions for pod “flutter_sound”:

原因:在新創建的專案中未指定 ios 平臺的版本,則默認為 9.0,但是 flutter_sound 插件需要的版本是 10 以上

創建專案時默認的 iso 平臺版本

v ios/Podfile

# Uncomment this line to define a global platform for your project
# 配置被注釋了
# platform :ios, '9.0'

flutter_sound 插件需要的 ios 平臺版本是 10.0

v .symlinks/plugins/flutter_sound/ios/flutter_sound.podspec

#
# To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html
#
Pod::Spec.new do |s|
s.name = 'flutter_sound'
  s.version          = '8.4.2'
  s.summary          = 'Flutter plugin that relates to sound like audio and recorder.'
  s.description      = <<-DESC
Flutter plugin that relates to sound like audio and recorder.
                       DESC
  s.homepage         = 'https://github.com/dooboolab/flutter_sound/flutter_sound'
  s.license          = { :file => '../LICENSE' }
  s.author           = { 'Dooboolab' => 'dooboolab@gmail.com' }
  s.source           = { :path => '.' }
  s.source_files = 'Classes/**/*'
  s.public_header_files = 'Classes/**/*.h'
  s.dependency 'Flutter'

  s.ios.deployment_target = '10.0'  插件需要的 ios 版本
  s.static_framework = true
  s.dependency 'flutter_sound_core', '8.4.2'
  s.dependency 'mobile-ffmpeg-audio', '4.4.LTS'
  #s.dependency 'ffmpeg-kit-ios-full', '~> 4.4.LTS'
end

處理方法:將上面的 9.0 改成 10.0,并去掉注釋,

坑二 you may set use_modular_headers! globally in your Podfile

    -> Installing webview_flutter_wkwebview (0.0.1)
      - Running pre install hooks
    [!] The following Swift pods cannot yet be integrated as static libraries:

    The Swift pod `DKPhotoGallery` depends upon `SDWebImage`, which does not define modules. To opt into those targets generating module maps (which is necessary to import them from Swift when building as
    static libraries), you may set `use_modular_headers!` globally in your Podfile, or specify `:modular_headers => true` for particular dependencies.

處理 you may set use_modular_headers! globally in your Podfile

nvim ios/Podfile

target 'Runner' do
  use_modular_headers!  新增內容

坑三 warning: The iOS Simulator deployment target ‘IPHONEOS_DEPLOYMENT_TARGET’ is set to 8.0, but the range of supported deployment target versions is 9.0 to 14.4.99. (in target ‘TXIMSDK_Plus_iOS’ from project

warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0, but the range of supported deployment target versions is 9.0 to 14.4.99. (in target 'TXIMSDK_Plus_iOS' from project
    'Pods')

處理 坑三 warning: The iOS Simulator deployment target ‘IPHONEOS_DEPLOYMENT_TARGET’ is set to 8.0, but the range of supported deployment target versions is 9.0 to 14.4.99. (in target ‘TXIMSDK_Plus_iOS’ from project

nvim ios/Podfile

target 'Runner' do
  use_frameworks!  新增內容

還可以參考這個方法

https://www.jessesquires.com/blog/2020/07/20/xcode-12-drops-support-for-ios-8-fix-for-cocoapods/

The release notes for Xcode 12 beta state that the release “supports on-device debugging for iOS 9 and later, tvOS 9 and later, and watchOS 2 and later.” I am not sure if that means support for building and deploying for iOS 8 is completely removed, but it sounds like it. Who is still deploying to iOS 8, anyway?

If you are using CocoaPods with Xcode 12 beta, then you have probably seen this error:

The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0, but the range of supported deployment target versions is 9.0 to 14.0.99.

This is happening because support for iOS 8 has been dropped, but the minimum deployment target for the pod is iOS 8. This older GitHub issue on CocoaPods discusses this a bit, as well as this recently opened issue. Note that even if your minimum deployment target is greater than iOS 8, you will still see this error.

Until this is fixed in CocoaPods, you can add the following to your Podfile as a workaround:

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET'
    end
  end
end

This will remove all deployment target settings from all of the pods in your project, which allows them to simply inherit the project/workspace deployment target that you have specified at the top of your Podfile.

java_swift

java 同 java_objectc

swift

坑一 CocoaPods could not find compatible versions for pod “flutter_sound”:

[!] CocoaPods could not find compatible versions for pod "flutter_sound":
      In Podfile:
        flutter_sound (from `.symlinks/plugins/flutter_sound/ios`)

    Specs satisfying the `flutter_sound (from `.symlinks/plugins/flutter_sound/ios`)` dependency were found, but they required a higher minimum deployment target.

......

Error output from CocoaPods:
?

    [!] `<PBXGroup UUID=`97C146E51CF9000F007C117D`>` attempted to initialize an object with an unknown UUID. `CF3B75C9A7D2FA2A4C99F110` for attribute: `children`. This can be the result of a merge and the
    unknown UUID is being discarded.

    [!] Automatically assigning platform `iOS` with version `9.0` on target `Runner` because no platform was specified. Please specify a platform for this target in your Podfile. See
    `https://guides.cocoapods.org/syntax/podfile.html#platform`.

Error running pod install
Error launching application on iPhone 8 Plus.

處理 CocoaPods could not find compatible versions for pod “flutter_sound”:

原因:在新創建的專案中未指定 ios 平臺的版本,則默認為 9.0,但是 flutter_sound 插件需要的版本是 10 以上

創建專案時默認的 iso 平臺版本

v ios/Podfile

# Uncomment this line to define a global platform for your project
# 配置被注釋了
# platform :ios, '9.0'

flutter_sound 插件需要的 ios 平臺版本是 10.0

v .symlinks/plugins/flutter_sound/ios/flutter_sound.podspec

#
# To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html
#
Pod::Spec.new do |s|
s.name = 'flutter_sound'
  s.version          = '8.4.2'
  s.summary          = 'Flutter plugin that relates to sound like audio and recorder.'
  s.description      = <<-DESC
Flutter plugin that relates to sound like audio and recorder.
                       DESC
  s.homepage         = 'https://github.com/dooboolab/flutter_sound/flutter_sound'
  s.license          = { :file => '../LICENSE' }
  s.author           = { 'Dooboolab' => 'dooboolab@gmail.com' }
  s.source           = { :path => '.' }
  s.source_files = 'Classes/**/*'
  s.public_header_files = 'Classes/**/*.h'
  s.dependency 'Flutter'

  s.ios.deployment_target = '10.0'  插件需要的 ios 版本
  s.static_framework = true
  s.dependency 'flutter_sound_core', '8.4.2'
  s.dependency 'mobile-ffmpeg-audio', '4.4.LTS'
  #s.dependency 'ffmpeg-kit-ios-full', '~> 4.4.LTS'
end

處理方法:將上面的 9.0 改成 10.0,并去掉注釋,

沒有坑二

坑三 warning: The iOS Simulator deployment target ‘IPHONEOS_DEPLOYMENT_TARGET’ is set to 8.0, but the range of supported deployment target versions is 9.0 to 14.4.99. (in target ‘TXIMSDK_Plus_iOS’ from project

warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0, but the range of supported deployment target versions is 9.0 to 14.4.99. (in target 'TXIMSDK_Plus_iOS' from project
    'Pods')

處理 坑三 warning: The iOS Simulator deployment target ‘IPHONEOS_DEPLOYMENT_TARGET’ is set to 8.0, but the range of supported deployment target versions is 9.0 to 14.4.99. (in target ‘TXIMSDK_Plus_iOS’ from project

nvim ios/Podfile

target 'Runner' do
  use_frameworks!  新增內容

還可以參考這個方法

https://www.jessesquires.com/blog/2020/07/20/xcode-12-drops-support-for-ios-8-fix-for-cocoapods/

The release notes for Xcode 12 beta state that the release “supports on-device debugging for iOS 9 and later, tvOS 9 and later, and watchOS 2 and later.” I am not sure if that means support for building and deploying for iOS 8 is completely removed, but it sounds like it. Who is still deploying to iOS 8, anyway?

If you are using CocoaPods with Xcode 12 beta, then you have probably seen this error:

The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0, but the range of supported deployment target versions is 9.0 to 14.0.99.

This is happening because support for iOS 8 has been dropped, but the minimum deployment target for the pod is iOS 8. This older GitHub issue on CocoaPods discusses this a bit, as well as this recently opened issue. Note that even if your minimum deployment target is greater than iOS 8, you will still see this error.

Until this is fixed in CocoaPods, you can add the following to your Podfile as a workaround:

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET'
    end
  end
end

This will remove all deployment target settings from all of the pods in your project, which allows them to simply inherit the project/workspace deployment target that you have specified at the top of your Podfile.

kotlin_objectc

kotlin

坑一 minSdkVersion 19

?  java_objectc flutter run
Multiple devices found:
sdk gphone x86 (mobile) ? emulator-5554                        ? android-x86 ? Android 11 (API 30) (emulator)
iPhone 8 Plus (mobile)  ? C235F27E-F408-44E4-8223-43F4C4846E28 ? ios         ? com.apple.CoreSimulator.SimRuntime.iOS-14-4 (simulator)
[1]: sdk gphone x86 (emulator-5554)
[2]: iPhone 8 Plus (C235F27E-F408-44E4-8223-43F4C4846E28)
Please choose one (To quit, press "q/Q"): 1
Running "flutter pub get" in java_objectc...                           ?
 1,411ms
Using hardware rendering with device sdk gphone x86. If you notice graphics artifacts, consider enabling software rendering with "--enable-software-rendering".
Launching lib/main.dart on sdk gphone x86 in debug mode...
/Users/swot/learn/flutter/java_objectc/android/app/src/debug/AndroidManifest.xml Error:
	uses-sdk:minSdkVersion 16 cannot be smaller than version 19 declared in library [:flutter_plugin_record] /Users/swot/learn/flutter/java_objectc/build/flutter_plugin_record/intermediates/library_manifest/debug/AndroidManifest.xml as the library might be using APIs not available in 16
	Suggestion: use a compatible library with a minSdk of at most 16,
		or increase this project's minSdk version to at least 19,
		or use tools:overrideLibrary="record.wilson.flutter.com.flutter_plugin_record" to force usage (may lead to runtime failures)

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processDebugMainManifest'.
> Manifest merger failed : uses-sdk:minSdkVersion 16 cannot be smaller than version 19 declared in library [:flutter_plugin_record] /Users/swot/learn/flutter/java_objectc/build/flutter_plugin_record/intermediates/library_manifest/debug/AndroidManifest.xml as the library might be using APIs not available in 16
  	Suggestion: use a compatible library with a minSdk of at most 16,
  		or increase this project's minSdk version to at least 19,
  		or use tools:overrideLibrary="record.wilson.flutter.com.flutter_plugin_record" to force usage (may lead to runtime failures)

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 37s
Running Gradle task 'assembleDebug'...                             67.5s

The plugin flutter_plugin_record requires a higher Android SDK version.
Fix this issue by adding the following to the file /Users/swot/learn/flutter/java_objectc/android/app/build.gradle:
android {
  defaultConfig {
    minSdkVersion 19
  }
}


Note that your app won't be available to users running Android SDKs below 19.
Alternatively, try to find a version of this plugin that supports these lower versions of the Android SDK.
Exception: Gradle task assembleDebug failed with exit code 1

處理 minSdkVersion 19

nvim /Users/swot/learn/flutter/java_objectc/android/app/build.gradle

change 16 to 19

minSdkVersion 16
minSdkVersion 19

坑二 add ‘tools:replace=“android:label”’

?  java_objectc flutter run
Multiple devices found:
sdk gphone x86 (mobile) ? emulator-5554                        ? android-x86 ? Android 11 (API 30) (emulator)
iPhone 8 Plus (mobile)  ? C235F27E-F408-44E4-8223-43F4C4846E28 ? ios         ? com.apple.CoreSimulator.SimRuntime.iOS-14-4 (simulator)
[1]: sdk gphone x86 (emulator-5554)
[2]: iPhone 8 Plus (C235F27E-F408-44E4-8223-43F4C4846E28)
Please choose one (To quit, press "q/Q"): 1
Using hardware rendering with device sdk gphone x86. If you notice graphics artifacts, consider enabling software rendering with "--enable-software-rendering".
Launching lib/main.dart on sdk gphone x86 in debug mode...
/Users/swot/learn/flutter/java_objectc/android/app/src/debug/AndroidManifest.xml:4:9-37 Error:
	Attribute application@label value=(java_objectc) from AndroidManifest.xml:4:9-37
	is also present at [com.github.adrielcafe:AndroidAudioConverter:0.0.8] AndroidManifest.xml:11:18-50 value=(@string/app_name).
	Suggestion: add 'tools:replace="android:label"' to <application> element at AndroidManifest.xml:3:4-40:19 to override.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processDebugMainManifest'.
> Manifest merger failed : Attribute application@label value=(java_objectc) from AndroidManifest.xml:4:9-37
  	is also present at [com.github.adrielcafe:AndroidAudioConverter:0.0.8] AndroidManifest.xml:11:18-50 value=(@string/app_name).
  	Suggestion: add 'tools:replace="android:label"' to <application> element at AndroidManifest.xml:3:4-40:19 to override.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 34s
Running Gradle task 'assembleDebug'...                             64.6s
Exception: Gradle task assembleDebug failed with exit code 1

處理 add ‘tools:replace=“android:label”’

nvim android/app/src/debug/AndroidManifest.xml

更改內容如下:

package="com.example.java_objectc"> 更改為
package="com.example.java_objectc" xmlns:tools="http://schemas.android.com/tools">
注意專案名稱要對應

新增一行:
<application tools:replace="android:label" android:label="@string/app_name"></application>

坑三 Error while merging dex archives:

D8: Cannot fit requested classes in a single dex file (# methods: 70322 > 65536)
com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:
The number of method references in a .dex file cannot exceed 64K.

......

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:mergeDexDebug'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:
     The number of method references in a .dex file cannot exceed 64K.
     Learn how to resolve this issue at https://developer.android.com/tools/building/multidex.html

處理 Error while merging dex archives:

nvim /Users/swot/learn/flutter/java_objectc/android/app/build.gradle

defaultConfig 里新增一行

multiDexEnabled true

坑四 The binary version of its metadata is 1.5.1, expected version is 1.1.15

e: Incompatible classes were found in dependencies. Remove them from the classpath or use '-Xskip-metadata-version-check' to suppress errors
e: /Users/swot/.gradle/caches/transforms-2/files-2.1/24fa3aa8d2270e5eb067bbe36e9b7563/jetified-kotlin-stdlib-1.5.10.jar!/META-INF/kotlin-stdlib.kotlin_module: Module was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.5.1, expected version is 1.1.15.

處理 kotlin 版本問題

  1. 查看 Android Studio 中 Kotlin 版本
    在這里插入圖片描述

    上圖舉例中的版本為 1.5.31

  2. 查看專案指定 cotlin 版本

      vim android/build.gradle
     
      buildscript {
          ext.kotlin_version = '1.3.50'  更改為
          ext.kotlin_version = '1.5.31'
    
  3. 嘗試在 Android Studio 中開關 Kotlin 插件

  4. 執行 flutter clean

  5. 再執行 flutter run 試試

坑五 Gradle threw an error while downloading artifacts from the network

Gradle threw an error while downloading artifacts from the network. Retrying to download...
Exception: Gradle task assembleDebug failed with exit code 1

執行 flutter run -v 時發現是在下載下面 zip 包時報錯

[ +239 ms] Downloading https://services.gradle.org/distributions/gradle-6.7-all.zip

處理 Gradle 版本低的問題

https://stackoverflow.com/questions/61986128/gradle-threw-an-error-while-downloading-artifacts-from-the-network-exception

Do follow some steps:

  1. Go to flutter_app => android => gradle => wrapper directory
  2. Delete gradle-wrapper.jar file
  3. Open and edit gradle-wrapper.properties file
  4. Change distributionUrl=https://services.gradle.org/distributions/gradle-x.x.x-all.zip to gradle-7.2-all.zip or latest
  5. On terminal use flutter run command

在我的測驗專案中舉例如下:

distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip  更改為

distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip

坑六 Starting a Gradle Daemon, 1 stopped Daemon could not be reused, use --status for details

Starting a Gradle Daemon, 1 stopped Daemon could not be reused, use --status for details

處理:

cd /Users/swot/.gradle/daemon
洗掉里面的版本目錄,如 7.2

或者重啟電腦,Gradle Daemon 就沒有了,

坑七 Starting a Gradle Daemon (subsequent builds will be faster)

等著吧……,大約半小時左右,看網速,看機器配置,

kotlin_swift 上面的三個都解決了,這個就不用解決了

轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/384304.html

標籤:其他

上一篇:速度提高30%,Android 12 Go 發布

下一篇:【Android Studio期末復習課后題之反復易錯點|1,2,3章課后題】

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 【從零開始擼一個App】Dagger2

    Dagger2是一個IOC框架,一般用于Android平臺,第一次接觸的朋友,一定會被搞得暈頭轉向。它延續了Java平臺Spring框架代碼碎片化,注解滿天飛的傳統。嘗試將各處代碼片段串聯起來,理清思緒,真不是件容易的事。更不用說還有各版本細微的差別。 與Spring不同的是,Spring是通過反射 ......

    uj5u.com 2020-09-10 06:57:59 more
  • Flutter Weekly Issue 66

    新聞 Flutter 季度調研結果分享 教程 Flutter+FaaS一體化任務編排的思考與設計 詳解Dart中如何通過注解生成代碼 GitHub 用對了嗎?Flutter 團隊分享如何管理大型開源專案 插件 flutter-bubble-tab-indicator A Flutter librar ......

    uj5u.com 2020-09-10 06:58:52 more
  • Proguard 常用規則

    介紹 Proguard 入口,如何查看輸出,如何使用 keep 設定入口以及使用實體,如何配置壓縮,混淆,校驗等規則。

    ......

    uj5u.com 2020-09-10 06:59:00 more
  • Android 開發技術周報 Issue#292

    新聞 Android即將獲得類AirDrop功能:可向附近設備快速分享檔案 谷歌為安卓檔案管理應用引入可安全隱藏資料的Safe Folder功能 Android TV新主界面將顯示電影、電視節目和應用推薦內容 泄露的Android檔案暗示了傳說中的谷歌Pixel 5a與折疊屏新機 谷歌發布Andro ......

    uj5u.com 2020-09-10 07:00:37 more
  • AutoFitTextureView Error inflating class

    報錯: Binary XML file line #0: Binary XML file line #0: Error inflating class xxx.AutoFitTextureView 解決: <com.example.testy2.AutoFitTextureView android: ......

    uj5u.com 2020-09-10 07:00:41 more
  • 根據Uri,Cursor沒有獲取到對應的屬性

    Android: 背景:呼叫攝像頭,拍攝視頻,指定保存的地址,但是回傳的Cursor檔案,只有名稱和大小的屬性,沒有其他諸如時長,連ID屬性都沒有 使用 cursor.getInt(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DURATIO ......

    uj5u.com 2020-09-10 07:00:44 more
  • Android連載29-持久化技術

    一、持久化技術 我們平時所使用的APP產生的資料,在記憶體中都是瞬時的,會隨著斷電、關機等丟失資料,因此android系統采用了持久化技術,用于存盤這些“瞬時”資料 持久化技術包括:檔案存盤、SharedPreference存盤以及資料庫存盤,還有更復雜的SD卡記憶體儲。 二、檔案存盤 最基本存盤方式, ......

    uj5u.com 2020-09-10 07:00:47 more
  • Android Camera2Video整合到自己專案里

    背景: Android專案里呼叫攝像頭拍攝視頻,原本使用的 MediaStore.ACTION_VIDEO_CAPTURE, 后來因專案需要,改成了camera2 1.Camera2Video 官方demo有點問題,下載后,不能直接整合到專案 問題1.多次拍攝視頻崩潰 問題2.雙擊record按鈕, ......

    uj5u.com 2020-09-10 07:00:50 more
  • Android 開發技術周報 Issue#293

    新聞 谷歌為Android TV開發者提供多種新功能 Android 11將自動填表功能整合到鍵盤輸入建議中 谷歌宣布Android Auto即將支持更多的導航和數字停車應用 谷歌Pixel 5只有XL版本 搭載驍龍765G且將比Pixel 4更便宜 [圖]Wear OS將迎來重磅更新:應用啟動時間 ......

    uj5u.com 2020-09-10 07:01:38 more
  • 海豚星空掃碼投屏 Android 接收端 SDK 集成 六步驟

    掃碼投屏,開放網路,獨占設備,不需要額外下載軟體,微信掃碼,發現設備。支持標準DLNA協議,支持倍速播放。視頻,音頻,圖片投屏。好點意思。還支持自定義基于 DLNA 擴展的操作動作。好像要收費,沒體驗。 這里簡單記錄一下集成程序。 一 跟目錄的build.gradle添加私有mevan倉庫 mave ......

    uj5u.com 2020-09-10 07:01:43 more
最新发布
  • 歡迎頁輪播影片

    如圖,引導開始,球從上落下,同時淡入文字,然后文字開始輪播,最后一頁時停止,點擊進入首頁。 在來看看效果圖。 重力球先不講,主要歡迎輪播簡單實作 首先新建一個類 TextTranslationXGuideView,用于影片展示 文本是類似的,最后會有個圖片箭頭影片,布局很簡單,就是一個 TextVi ......

    uj5u.com 2023-04-20 08:40:31 more
  • 【FAQ】關于華為推送服務因營銷訊息頻次管控導致服務通訊類訊息

    一. 問題描述 使用華為推送服務下發IM訊息時,下發訊息請求成功且code碼為80000000,但是手機總是收不到訊息; 在華為推送自助分析(Beta)平臺查看發現,訊息發送觸發了頻控。 二. 問題原因及背景 2023年1月05日起,華為推送服務對咨詢營銷類訊息做了單個設備每日推送數量上限管理,具體 ......

    uj5u.com 2023-04-20 08:40:11 more
  • 歡迎頁輪播影片

    如圖,引導開始,球從上落下,同時淡入文字,然后文字開始輪播,最后一頁時停止,點擊進入首頁。 在來看看效果圖。 重力球先不講,主要歡迎輪播簡單實作 首先新建一個類 TextTranslationXGuideView,用于影片展示 文本是類似的,最后會有個圖片箭頭影片,布局很簡單,就是一個 TextVi ......

    uj5u.com 2023-04-20 08:39:36 more
  • 【FAQ】關于華為推送服務因營銷訊息頻次管控導致服務通訊類訊息

    一. 問題描述 使用華為推送服務下發IM訊息時,下發訊息請求成功且code碼為80000000,但是手機總是收不到訊息; 在華為推送自助分析(Beta)平臺查看發現,訊息發送觸發了頻控。 二. 問題原因及背景 2023年1月05日起,華為推送服務對咨詢營銷類訊息做了單個設備每日推送數量上限管理,具體 ......

    uj5u.com 2023-04-20 08:39:13 more
  • iOS從UI記憶體地址到讀取成員變數(oc/swift)

    開發除錯時,我們發現bug時常首先是從UI顯示發現例外,下一步才會去定位UI相關連的資料的。XCode有給我們提供一系列debug工具,但是很多人可能還沒有形成一套穩定的除錯流程,因此本文嘗試解決這個問題,順便提出一個暴論:UI顯示例外問題只需要兩個步驟就能完成定位作業的80%: 定位例外 UI 組 ......

    uj5u.com 2023-04-19 09:16:23 more
  • FIDE重磅更新!性能飛躍!體驗有禮!

    FIDE 開發者工具重構升級啦!實作500%性能提升,誠邀體驗! 一直以來不少開發者朋友在社區反饋,在使用 FIDE 工具的程序中,時常會遇到諸如加載不及時、代碼預覽/渲染性能不如意的情況,十分影響開發體驗。 作為技術團隊,我們深知一件趁手的開發工具對開發者的重要性,因此,在2023年開年,FinC ......

    uj5u.com 2023-04-19 09:16:15 more
  • 游戲內嵌社區服務開放,助力開發者提升玩家互動與留存

    華為 HMS Core 游戲內嵌社區服務提供快速訪問華為游戲中心論壇能力,支持玩家直接在游戲內瀏覽帖子和交流互動,助力開發者擴展內容生產和觸達的場景。 一、為什么要游戲內嵌社區? 二、游戲內嵌社區的典型使用場景 1、游戲內打開論壇 您可以在游戲內繪制論壇入口,為玩家提供沉浸式發帖、瀏覽、點贊、回帖、 ......

    uj5u.com 2023-04-19 09:15:46 more
  • iOS從UI記憶體地址到讀取成員變數(oc/swift)

    開發除錯時,我們發現bug時常首先是從UI顯示發現例外,下一步才會去定位UI相關連的資料的。XCode有給我們提供一系列debug工具,但是很多人可能還沒有形成一套穩定的除錯流程,因此本文嘗試解決這個問題,順便提出一個暴論:UI顯示例外問題只需要兩個步驟就能完成定位作業的80%: 定位例外 UI 組 ......

    uj5u.com 2023-04-19 09:14:53 more
  • FIDE重磅更新!性能飛躍!體驗有禮!

    FIDE 開發者工具重構升級啦!實作500%性能提升,誠邀體驗! 一直以來不少開發者朋友在社區反饋,在使用 FIDE 工具的程序中,時常會遇到諸如加載不及時、代碼預覽/渲染性能不如意的情況,十分影響開發體驗。 作為技術團隊,我們深知一件趁手的開發工具對開發者的重要性,因此,在2023年開年,FinC ......

    uj5u.com 2023-04-19 09:14:08 more
  • 游戲內嵌社區服務開放,助力開發者提升玩家互動與留存

    華為 HMS Core 游戲內嵌社區服務提供快速訪問華為游戲中心論壇能力,支持玩家直接在游戲內瀏覽帖子和交流互動,助力開發者擴展內容生產和觸達的場景。 一、為什么要游戲內嵌社區? 二、游戲內嵌社區的典型使用場景 1、游戲內打開論壇 您可以在游戲內繪制論壇入口,為玩家提供沉浸式發帖、瀏覽、點贊、回帖、 ......

    uj5u.com 2023-04-19 09:08:34 more