Skip to main content

Posts

Showing posts with the label Dart

Solving Flutter Debug Install Failures on Vivo Devices (One-Click Auth)

  When executing   flutter run   on a physical Vivo device, the process frequently stalls at "Installing build/app/outputs/flutter-apk/app-debug.apk" or hard-crashes with   INSTALL_FAILED_USER_RESTRICTED   and   INSTALL_CANCELED_BY_USER . Standard Android USB debugging toggles are insufficient to bypass this block. In modern  Flutter app development , deploying to physical hardware is vital for accurate  cross-platform debugging . However, Vivo's proprietary Android skins (Funtouch OS and OriginOS) implement aggressive security layers that intercept standard Android Debug Bridge (ADB) commands. Resolving this requires accessing a hidden system menu via the USSD dialer to grant one-click authorization. The Root Cause of Vivo ADB Rejections Under standard Android Open Source Project (AOSP) architecture, enabling USB Debugging grants the ADB daemon ( adbd ) the necessary  INSTALL_PACKAGES  permission. This allows the Flutter toolchain to co...

How to Resolve Flutter HMS Core Plugin Dependency Conflicts

  Integrating Huawei Mobile Services (HMS) alongside Google Mobile Services (GMS) in a single Flutter codebase frequently results in fatal Gradle build errors. The most common symptom is the build failing with   Execution failed for task :app:processDebugMainManifest . This occurs when combining the  agconnect-services  plugin with Google Firebase packages. Both ecosystems inject proprietary configurations into your Android build pipeline, leading to a direct clash during the manifest merging phase. This guide provides the technical resolution to this HMS plugin dependency error, ensuring stable cross-ecosystem builds. Root Cause Analysis of the Manifest Conflict To fix the error, it is necessary to understand how the Android Gradle build system processes dependencies. When you run  flutter build apk  or  flutter run , the Android Manifest Merger tool combines the  AndroidManifest.xml  from your primary application with the manifests of all i...