A new Flutter project for PC to control mobiles by adb tool.

Overview

mobile_controller

A new Flutter project for PC to control mobiles by adb tool.

Develop in progress, not release yet...

Features

  • Provide computer control mobile phone shortcut keys
  • Mobile device and application information extraction display
  • Support for custom commands
  • Provide a script to automate the control of Tiktok or any other apps
  • Multi-platform supported (MacOs, Windows, Linux)

Progress & Todo

  • Terminal Technology Research
  • UI framework construction on PC
  • Display connected device list
  • Query and display brief information about devices
  • Automatically control device sliding, input text, etc.
  • Construct steps of script by hand (set positions or input contents) without any code.
  • User can collect and customize any other commands.
  • Show script execution history records and quick run again.

Technology Design

  • Shield the input and output processing details of different commands through strategy mode
  • Use the Chain of Responsibility pattern to assemble different steps to generate scripting concepts

Getting Started

This project is a starting point for a Flutter application.

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

Thanks

Comments
  • flutter build macos failed

    flutter build macos failed

    ❯ flutter doctor Doctor summary (to see all details, run flutter doctor -v): [✓] Flutter (Channel stable, 2.10.4, on macOS 12.3 21E230 darwin-x64, locale en-US) [✓] Android toolchain - develop for Android devices (Android SDK version 32.0.0) [✓] Xcode - develop for iOS and macOS (Xcode 13.3) [✓] Chrome - develop for the web [✓] Android Studio (version 2021.1) [✓] IntelliJ IDEA Ultimate Edition (version 2021.3.3) [✓] VS Code (version 1.65.2)

    flutter build macos Running "flutter pub get" in flutter_mobile_controller... 780ms

    💪 Building with sound null safety 💪

    Running pod install... 1,171ms Building macOS application... 2022-03-31 17:04:04.188 xcodebuild[82609:5160111] Requested but did not find extension point with identifier Xcode.IDEKit.ExtensionSentinelHostApplications for extension Xcode.DebuggerFoundation.AppExtensionHosts.watchOS of plug-in com.apple.dt.IDEWatchSupportCore Building macOS application... 2022-03-31 17:04:04.189 xcodebuild[82609:5160111] Requested but did not find extension point with identifier Xcode.IDEKit.ExtensionPointIdentifierToBundleIdentifier for extension Xcode.DebuggerFoundation.AppExtensionToBundleIdentifierMap.watchOS of plug-in com.apple.dt.IDEWatchSupportCore Building macOS application... --- xcodebuild: WARNING: Using the first of multiple matching destinations: Building macOS application... { platform:macOS, arch:x86_64, id:4F8DD380-23F3-5092-A7FD-00E93833831C } Building macOS application... { platform:macOS, name:Any Mac } Building macOS application... Building App.framework for x86_64... Building macOS application... Codepoint 65593 not found in font, aborting. Building macOS application...
    Building macOS application...
    Building macOS application... Command PhaseScriptExecution failed with a nonzero exit code Building macOS application... note: Using new build system Building macOS application... note: Planning Building macOS application... note: Build preparation complete Building macOS application... note: Building targets in dependency order Building macOS application... ** BUILD FAILED ** Building macOS application...
    Building macOS application...
    Build process failed

    how to fix this? shoud i need -v to give more detailed log?

    question solved 
    opened by joeycold 1
  • Solution: debug connection by wifi instead of usb interface

    Solution: debug connection by wifi instead of usb interface

    1. monitor tcp port
    => adb tcpip 5555
    
    1. scan mobile ip address
    => adb shell netcfg
    
    1. connect device by ip address
    => adb connect device_ip_address:5555
    
    
    enhancement solutions 
    opened by Moosphan 0
  • Solution: View current Activity or fragment name

    Solution: View current Activity or fragment name

    View activity:

    adb shell "dumpsys activity top | grep ACTIVITY | tail -n 1"
    

    View fragment:

    adb shell "dumpsys activity top | grep '#0: ' | tail -n 1"
    
    
    question solutions activity 
    opened by Moosphan 0
  • Solution: Collect current layout info of app

    Solution: Collect current layout info of app

    adb shell uiautomator dump /data/local/tmp/uidump.xml  && adb pull /data/local/tmp/uidump.xml uidump.xml
    

    This will output uidump.xml file into current directory.

    enhancement solutions 
    opened by indieexplore 0
  • Solution: How to implement Transparent FlutterViewController on macos

    Solution: How to implement Transparent FlutterViewController on macos

    See: https://github.com/flutter/flutter/issues/59969

    Example:

       // Transparent view
       self.isOpaque = false
       self.backgroundColor = .clear
       // Add the blur layer
        let blurView = NSVisualEffectView()
        let view = contentViewController?.view.superview;
        blurView.frame = CGRect(x: 0, y: 0, width: 2000, height: 2000)
        view?.addSubview(blurView, positioned: NSWindow.OrderingMode.below, relativeTo: nil)
    
    question solutions UI 
    opened by Moosphan 1
Owner
Hulk Su
My sword, I leave to him who can wield it. Everyday is a long practice.
Hulk Su
Flutter remote control - The main use of LongPressDraggable and DragTarget to achieve the universal remote control interaction effect.

Flutter remote control - The main use of LongPressDraggable and DragTarget to achieve the universal remote control interaction effect.

唯鹿 165 Jan 2, 2023
App to control your health activities like calorie, water, medicine consumption, sleeping and weight control.

Handy Configuration for yourself This project contains google-services.json file of my own. You can connect your own firebase project using the follow

KanZa Studio 104 Jan 3, 2023
A new Flutter widget that add support for AndroidTV app. Using keyboard to control focus node.

flutter_tv_autofocus A new Flutter widget that add support for AndroidTV app. Using keyboard to control focus node. Getting Started Wrap your flutter

SUPERMONKEY 28 Aug 18, 2022
This is tool to create 3D Models which can be used in Flutter Applications. Tool is developed completely using Flutter.

three_d_model_tool A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you start

Shubham Yeole 2 Nov 8, 2022
A collection of templates to make new Flutter components using the Mason build tool.

Mason Flutter Templates A collection of templates to make new Flutter components using the Mason build tool. Setup in Project To use these templates i

Marcus Twichel 5 Jun 21, 2022
A fast start flutter project to make aps faster and skip setup on every application. I am personally using this structure while creating a new project

Flutter Fast Start A fast start flutter project to make apps faster and skip setup on every application. I am personally using this structure while cr

Okan Demir 2 Dec 15, 2022
A Flutter Plugin for Volume Control and Monitoring, support iOS and Android

flutter_volume A flutter plugin for volume control and monitoring, support iOS and Android 手把手带你写 Flutter 系统音量插件 https://www.yuque.com/befovy/share/fl

befovy 35 Dec 9, 2022
Flutter Control is complex library to maintain App and State management. Library merges multiple functionality under one hood. This approach helps to tidily bound separated logic into complex solution.

Flutter Control is complex library to maintain App and State management. Library merges multiple functionality under one hood. This approach helps to

Roman Hornak 23 Feb 23, 2022
A VLC remote control written with Flutter

VLC Remote A VLC remote control written with Flutter. Initial Setup Guides The first time you start VLC Remote, it will provide a guide to setting up

Jonny Buchanan 65 Oct 27, 2022
Flutter control system widgets, like on-off controller.

control_system Flutter control system widgets, like on-off controller. Introduction A control system manages, commands, directs, or regulates the beha

Amirreza Madani 0 Jan 9, 2022
Control your flutter application on zeplin

Zeplin_Flutter Control your flutter application on zeplin. ?? Usage var zeplinData = ZeplinFlutter.fetchFromZeplin(token: @token,projectId: @projectId

Abdussamet Inanç 2 May 10, 2022
A control pad with a virtual joystick and buttons.

control_pad A virtual pad with joystick controller and configurable buttons. Features Joystick controller Pad's buttons Configurable events interval C

Artur Rymarz 39 Dec 7, 2022
Control your week, days, hours, and even minutes. ⏳

Info An advanced, minimalist, and powerful time management application. Where you can create the task, give it a duration, and select which weekdays y

Ismael Shakverdiev 86 Dec 18, 2022
Agendaulas-autoescola - A simple control app for theoretical driving lessons in Brazil

AgendAulas - Agenda de Aulas da AutoEscola Um aplicativo simples de controle par

Nathanael Ferreira 0 Dec 29, 2021
This is an animated app used to control Tesla Car which is on progress and will be published soon

Animated Tesla App Conect using Flutter Packages we are using: flutter_svg: link We will cover how to use ImplicitlyAnimatedWidge and how to use multi

null 1 Nov 13, 2021
MPV Remote: Remote control for MPV over SSH

MPV Remote Remote control for MPV over SSH. Big work-in-progress. Screenshots

Sam Lakerveld 1 Jun 2, 2022
⚡️ This project uses the flutter UI tool kit to build an education/skill app for offering online tutorials.

⚡️ This project uses the flutter UI tool kit to build an education/skill app for offering online tutorials.

Godson 8 Nov 10, 2022
A CLI tool to verify the test coverage of a pull request only, ignoring the rest of the project

This is a CI tool that analyzes the coverage rate of a pull request, ignoring the lines that were not changed in the PR. Motivation The coverage rate

Tales Barreto 3 Dec 15, 2022
Flutter ui boilerplate is easiest way to create new flutter project with clean code and well organized file folder.

Flutter UI Boilerplate "Sharing for fun" Flutter ui boilerplate is easiest way to create new flutter project with clean code and well organized file f

Dimas Ibnu Malik 122 Dec 1, 2022