AndroidIDEOfficial / AndroidIDE

AndroidIDE is an IDE for Android to develop full featured Android apps.
https://m.androidide.com
GNU General Public License v3.0
2.09k stars 251 forks source link

Support Samsung DeX and Motorola Ready For #1753

Open soutiagojose opened 4 months ago

soutiagojose commented 4 months ago

Issue Checklist

Additional terms

Feature description

Samsung DeX and Motorola Ready For seamlessly transform your Galaxy smartphone or Motorola device into a desktop-like experience. Connecting your smartphone to a monitor, keyboard, and mouse unleashes a versatile desktop interface, offering enhanced productivity. Both platforms provide keyboard shortcuts for a more efficient workflow, allowing users to navigate their mobile devices with the familiarity of desktop controls.

Moreover, these solutions bridge the gap between mobile and traditional computing by optimizing Android apps for a desktop-style interface. Some applications mimic the appearance and functionality of their PC counterparts, providing a cohesive experience. The integration of keyboard shortcuts and desktop-like interfaces enhances the user experience, making these solutions valuable for those who seek a unified computing environment across their mobile and desktop devices.

Use Case

Here are notable DeX and Ready For use cases:

Benefits

Samsung DeX and Motorola Read For turn the manufacturers' Android devices into practically a pocket computer, so much so that there is an open-source game creation program called Godot that is being adapted for them.

The main benefits for AndroidIDE will be the larger screen, bringing more possibilities for sections, visualization columns and in the case of Samsung, which even has an API, it can bring adaptive actions for when using the monitor. AndroidIDE can bring a responsive interface that on large screens can appear like Android Studio or VSCode, which has a full unofficial version for Android. Acode is an example.

Another benefit is that since Samsung DeX and Motorola Ready work without restricting the use of the device, you can use the monitor for development and the device for preview. The Samsung DeX documentation, for example, allows you to open the same app in multiple windows, like what happens on a PC and Samsung Dex allows the possibility of using one window on the cell phone and another on the monitor.

Mehulvaja commented 3 months ago

AndroidIDE Crash Report Version : v2.7.1-beta (27102) CI Build : true Branch : main Commit : 55bb46b31 Variant : arm64-v8a (release) Build type : OFFICIAL F-Droid Build : false F-Droid Version : null F-Droid Version code : -1 SDK Version : 34 Supported ABIs : [arm64-v8a, armeabi-v7a, armeabi] Manufacturer : OPPO Device : CPH2527

Stacktrace: android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is your activity running? at android.view.ViewRootImpl.setView(ViewRootImpl.java:1508) at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:426) at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:150) at android.widget.PopupWindow.invokePopup(PopupWindow.java:1594) at android.widget.PopupWindow.showAtLocation(PopupWindow.java:1356) at android.widget.PopupWindow.showAtLocation(PopupWindow.java:1322) at io.github.rosemoe.sora.widget.base.EditorPopupWindow.applyWindowAttributes(Unknown Source:152) at com.itsaky.androidide.editor.ui.AbstractPopupWindow.show(Unknown Source:25) at com.itsaky.androidide.editor.ui.EditorActionsMenu.show(Unknown Source:224) at com.itsaky.androidide.editor.ui.EditorActionsMenu.displayWindow(Unknown Source:168) at com.itsaky.androidide.editor.ui.EditorActionsMenu$$ExternalSyntheticLambda1.run(Unknown Source:21) at android.os.Handler.handleCallback(Handler.java:958) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loopOnce(Looper.java:257) at android.os.Looper.loop(Looper.java:368) at android.app.ActivityThread.main(ActivityThread.java:8825) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:572) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1049)