2
0
mirror of https://github.com/KDE/kdeconnect-android synced 2025-08-22 01:51:47 +00:00

268 Commits

Author SHA1 Message Date
Albert Vaca Cintora
ee806f2a22 Release 1.26.0 beta2 2023-06-04 23:54:33 +02:00
Albert Vaca Cintora
6a3d4de995 Release 1.26.0 beta 2023-06-04 20:06:21 +02:00
Albert Vaca Cintora
afd4219732 More code review changes 2023-06-04 17:22:34 +00:00
Albert Vaca Cintora
7d3cf9690a Rename RunCommandWidgetConfig -> RunCommandWidgetConfigActivity 2023-06-04 17:22:34 +00:00
Albert Vaca Cintora
11634b2cde Allow having widgets for more than once device
Rewrites the RunCommand widget. Now we can have different widgets for
different devices at the same time. Also removes the startService call
that could cause ForegroundServiceStartNotAllowedException on API 12+.
2023-06-04 17:22:34 +00:00
Albert Vaca Cintora
ad725e7a24 Release 1.25.0 2023-05-29 15:41:31 +02:00
Albert Vaca Cintora
ae23413971 Refactor BackgroundService
Added a new KdeConnect Application class that holds the Devices now, while
BackgroundService "only" takes care of the LinkProviders.

Since KdeConnect subclasses Application we have the guarantee that it will
exist as long as our process does, so we can use it as a singleton. This
removes the "BackgroundService.RunCommand" hack (which sent an Intent that
would awake BackgroundService in case it wasn't running already and then
call our code in a callback). This saves lots of round trips between the
system and us and makes things simpler (and stack traces useful) by making
the code sequential.

We already had an Application subclass that I moved to a new helper, which
now the KdeConnect class initializes together with all the other helpers.
2023-05-24 19:28:02 +02:00
Albert Vaca Cintora
ed0f97de1b Remove redundant supports-screens section 2023-05-10 16:57:44 +02:00
Albert Vaca Cintora
5d2b9557e7 Release 1.24.5 2023-04-26 22:29:19 +02:00
Dmitry Yudin
e9bc90d91a Modernize ComposeSendActivity
* UI update for the old compose send screen.
* Introduces Jetpack Compose.
* Migrates activity to Kotlin.
* Fixes "send" button being next to "clear".
2023-04-26 20:16:08 +00:00
Albert Vaca Cintora
763859d478 Release 1.24.3 2023-04-22 23:49:03 +02:00
Albert Vaca Cintora
32d6a346ab Disable MouseReceiver Plugin so we don't need accessibility API
Google doesn't like it :( Hopefully we can re-add it back soon.
2023-04-22 22:44:49 +02:00
Albert Vaca Cintora
2616a7a529 Release 1.24.2 2023-04-22 18:45:49 +02:00
Dmitry Yudin
9e5c9ca11a Migrate MainActivity to Kotlin
And replace deprecated onBackPressed with OnBackPressedCallback(s)
2023-04-20 13:54:27 +02:00
Albert Vaca Cintora
61190189ec Release 1.24.1 2023-04-13 19:10:54 +02:00
Krut Patel
642dce1168 Set android:exported to true for activities with intent filters
Required so that other apps can launch these activities.
2023-04-05 17:49:28 +00:00
Albert Vaca Cintora
b64b27bcae Release 1.24.0 2023-04-05 19:04:41 +02:00
Mihir Patel
b8cbd2b382 Adding support for per-app language preferences on Android 13 and later
Android 13 added the ability to select languages on a per-app basis. Supporting this feature simply requires us to provide a listing of all of the locales supported by the app: https://developer.android.com/guide/topics/resources/app-languages

This change adds a locales_config.xml file to list the locales and references this file in the application manifest
2023-03-25 19:25:39 +00:00
Albert Vaca Cintora
1ba9e59872 SftpPlugin: use MANAGE_EXTERNAL_STORAGE instead of SAF in Android 11+
https://developer.android.com/training/data-storage/manage-all-files

BUG: 447636
BUG: 464431
2023-03-19 20:26:09 +00:00
Albert Vaca Cintora
83b0c04d51 Release 1.23.2 2023-03-18 21:54:30 +01:00
Albert Vaca Cintora
a9e6fcff6a Release 1.23.1 2023-03-17 20:03:19 +01:00
Albert Vaca Cintora
afa0f89644 Bump target SDK to 32
https://developer.android.com/about/versions/12/behavior-changes-12
2023-03-16 12:00:32 +00:00
Albert Vaca Cintora
764a8f8525 Release 1.23.0 2023-03-16 12:51:42 +01:00
Albert Vaca Cintora
f6c61f4e4b Specify the foreground service type in Android 29+ 2023-02-25 11:31:18 +01:00
Albert Vaca Cintora
c36cb98d50 Release 1.22.2 2023-02-01 17:41:03 +01:00
Albert Vaca Cintora
bbbc315cf7 Release 1.22.1 2023-01-27 18:25:54 +01:00
Albert Vaca Cintora
b5d9293103 Remove REQUEST_INSTALL_PACKAGES permission
Google keeps being annoying and now they got really strict with which apps
can be published to the Play Store using this permission
2023-01-27 18:23:16 +01:00
Albert Vaca Cintora
9eb047e7a1 Actually, release 1.22 2023-01-23 23:34:24 +01:00
Albert Vaca Cintora
82415b3fa7 Release 1.21.2 2023-01-23 23:26:07 +01:00
Albert Vaca Cintora
889e0d5c52 Release 1.21.1 2023-01-08 13:30:42 +01:00
Albert Vaca Cintora
8b01db3c34 Release 1.21.0 2023-01-02 22:29:09 +01:00
Albert Vaca Cintora
25728eae18 If you use FINE_LOCATION you also should declare COARSE_LOCATION 2023-01-02 22:28:48 +01:00
Albert Vaca Cintora
dc7fc46e62 Revert "Comment out MouseReceiverPlugin"
This reverts commit a663f4d106f11112d8f7a9deda9e010732df3ed6.
2023-01-02 22:08:09 +01:00
Albert Vaca Cintora
5225d0b200 Release 1.20.2 2022-12-28 19:29:55 +01:00
Albert Vaca Cintora
c903c5d3fd Release 1.20.1
Untagged because it's for the play store only.
2022-12-28 00:26:58 +01:00
Albert Vaca Cintora
a663f4d106 Comment out MouseReceiverPlugin
The Play Store asks us a video showing why we need the accessibility
service, and I can't make it work so I can't record the video.
Removing this plugin removes the need for any accessibility permissions.
2022-12-28 00:14:49 +01:00
Albert Vaca Cintora
1a79c3e77a Release 1.20 2022-12-27 23:53:45 +01:00
Albert Vaca Cintora
6fbd923c60 Bump dependencies and targetSdkVersion
Motivation: We can't publish to the Play Store with a targetSdkVersion < 31

The new targetSdk required two changes:

* Specifying when activities, services and receivers should be exported or
  not to other apps. For the ones I wasn't sure of what we want, I made
  them exported to not break something.
* Specifying when a PendingIntent should be mutable or immutable. I made
  them all mutable for now.
2022-12-27 23:53:13 +01:00
Nicolas Fella
a94eeb4947 Revert "Remove arcconfig"
Had unrelated changes

This reverts commit 53e2e0be100eca7aca867dab2f96ad87a0f1f79c.
2022-08-05 01:23:55 +02:00
Nicolas Fella
53e2e0be10 Remove arcconfig
We are not using Phabricator anymore
2022-08-05 01:23:26 +02:00
Ilmaz Gumerov
edc655da5a Add logs reading for sending clipboard on Android 10
Enable with:
adb -d shell pm grant org.kde.kdeconnect_tp android.permission.READ_LOGS;
adb -d shell appops set org.kde.kdeconnect_tp SYSTEM_ALERT_WINDOW allow;
adb -d shell am force-stop org.kde.kdeconnect_tp;
2022-06-27 17:00:34 -04:00
Jing Xia
3bf3cb1629 Automatically reconnect to trusted networks in the background on API 29+
## Problem

On Android 10 (API 29) or later, when a trusted network has been configured, if the mobile device rejoins the network while KDE Connect is running in the background, it doesn't reconnect to any paired devices in the trusted network. It only reconnects when the user brings the app to the foreground.

## Cause

Android 10 introduced [a separate permission for background location access](https://developer.android.com/about/versions/10/privacy/changes#app-access-device-location). 

When KDE Connect is running in the background with API 29+, [`TrustedNetworkHelper.currentSSID` fails to get the SSID](d22967f475/src/org/kde/kdeconnect/Helpers/TrustedNetworkHelper.java (L77)) because it doesn't have the required permission. This prevents KDE Connect from verifying whether a network is trusted.

## Solution

Make KDE Connect request for background location access permission.

To request for background location access, an app must [declare it in the manifest](https://developer.android.com/training/location/permissions#background), or else the option to to enable background location access won't appear in settings.

As a side note, the permission request dialog in `TrustedNetworksActivity` doesn't require changes because after Android 11, the option to allow background location no longer shows up in a dialog. [It has to be manually enabled in settings.](https://developer.android.com/training/location/permissions#background-dialog-target-sdk-version)

## Test Plan

### Before:
On Android 10 or later, configure a trusted network and pair with a device in it. Let KDE Connect run in the background. Disconnect from the trusted network and then rejoin. KDE Connect won't automatically reconnect to the paired device.

### After:
Do the same steps as above, except after configuring the trust network, go into settings and allow KDE Connect to access location all the time. After KDE Connect rejoins the trusted network, it should automatically reconnect to the paired device.

![kdeconnect_location_permission_settings](/uploads/c7d03de9f1fb1502d7036f45ccb811a0/kdeconnect_location_permission_settings.png)
2022-03-01 22:08:54 +00:00
Manuel Jesús de la Fuente
5ba84c6e78 Add Android 8+ adaptive icons
![image](/uploads/a1aa9ed5e5ea5c8a0f39fb655299e79d/image.png)

Adds the Android 8+ style adaptive icons, using the app's highlight color for extra contrast against the current fallback white background behind the white phone border. This new icon follows the size and grid guidelines of material design, and was created as a 108dp@1x svg
2022-02-16 22:54:52 +00:00
Albert Vaca Cintora
db3f8f7f74 Release 1.19.1 2022-01-24 01:56:10 +01:00
Albert Vaca Cintora
fe94854f02 Release 1.19.0 2022-01-22 11:33:36 +01:00
Forrest Hilton
64ad798d70 Added a screen to allow users to compose the key strokes to send.
Added a screen to allow users to compose the key strokes to send. This is necessary because the keyboard that appears on the mouse pad screen does not have the voice to text microphone button on my phone. Even if it could be made to appear as it does on my tablet, some kind of text buffering is necessary because the voice text will change its mind.
2022-01-15 20:35:45 +00:00
Maxim Leshchenko
7286b8a24a Add ability to run commands from Android 11 power menu 2022-01-15 20:30:19 +00:00
Maxim Leshchenko
492555ab9b Add more ways to send clipboard
Add the ability to send the clipboard to the device via the quick settings tile and via the menu on the device page

BUG: 439951
2022-01-10 19:25:07 +00:00
Albert Vaca Cintora
f3fb7acef7 Release 1.18.1 2021-11-30 21:57:47 +01:00
Nishith Khanna
beafdb26ab Fixed package visibility for Android 11 devices
BUG: 445702
2021-11-25 06:33:22 +00:00