This should fix SFTP not working when using GSConnect (which
doesn't specify the SSH parameters we do to allow old cyphers).
Requires API 23, so on pre-23 we still use RSA.
The contacts plugin is the only one that copies (and persists) data to the
remote device just by connecting. By adding this extra confirmation once
per device, we prevent this from happening in cases where someone paired
with a friend to transfer a file, or paired by accident.
As discussed in Matrix and BUG: 474121 this plugin is confusing (because
it doesn't actually take a photo, it just launches the camera on your
phone) and its use case can be covered by taking a photo and sharing it,
which only requires a couple extra clicks.
## Summary
Remove the dead "New Message" notification channel.
This channel was used for a tiny period, probably around 4 years ago, when we thought the only way to support sending MMS on Android was to be the default SMS app, thus we wanted to show users a notification when they received messages while our app was in charge of handling them.
Thankfully, we do not need to be the default SMS app, so this notification channel should be removed.
## Test Plan
### Before:
Looking at the list of notification streams in the settings for KDE Connect will include a "New Message" channel. Notifications are never posted to this channel.
### After:
Users will not see a "New Message" channel. Note that it does show a count of deleted streams, to prevent spam. See [documentation](https://developer.android.com/develop/ui/views/notifications/channels#DeleteChannel) for explanation.
Starting next month (September 2023) it will be required to target
Android 13 to publish to the Play Store.
On Android 13, we need to request the POST_NOTIFICATIONS permission.
This change adds the permission as required/optional to the plugins
that do create notifications. It also adds a popup to request it the
first time you open the app.
Fixes a race condition where onNetworkChange was called before the new
network became the default and the identity packet would be broadcast to
the wrong (e.g. cellular) network.
Allows navigating the app using the arrow keys on a keyboard or the
D-pad on a TV remote, up until the plugin list (I haven't checked
specific plugins).
Uses Android's `NsdManager` to announce a `_kdeconnect._udp` service using MDNS. This is done in addition to sending UDP broadcasts.
When we detect a device this way, we send a UDP identity packet to it (identical to the ones we broadcast but sent to a single device).
I also added a toggle in settings to disable the UDP broadcasts, so we can test MDNS by itself.
The Presenter activity including its layout file and related Java class were replaced with Compose UI.
Additionally, the androidx.compose.material3:material3 was updated from version 1.1.0 to version 1.1.1.
Sometimes we can't start the foreground service at boot for some reason.
I have a couple untested theories: either the phone is slow at boot and
we don't get to call startForeground in time, or the user has never
started the app before and we are not allowed to start it or to create a
notification.
`DeviceInfo` contains all the properties we need to instantiate a `Device`:
id, name, type, cert, capabilities and protocol version. Before, we had a mix
of passing those around as arguments or passing identity packets (ie: json).
This simplifies the `Device` class quite a bit.
Now, `BaseLink` subclasses need to implement the `getDeviceInfo()` interface
that returns a `DeviceInfo`, which is what we will pass around and eventually
use to instantiate a `Device`.
This means that identity packets are an implementation detail of the
`LanLinkProvider` and that other implementations could get the `DeviceInfo`
in a different way.
In a future, we can add a mechanism for links to notify when their `DeviceInfo` changed.
This will allow us to better support device renames (which now are implemented by
reconnecting to the device and don't always work) or sending the capabilities fields
later in the case of MacOS/iOS where we can't send them in a UDP packet due to the
size limit of 1500 bytes.
Bubble up exceptions instead of using giant, generic try-catch blocks.
The UDP and TCP listener loops are now where we catch all the exceptions that might happen handling the incoming packets.
Also, the creation of worker threads now happens in the listener loops as well instead of the inner functions.
Finally the `broadcastUdpPacket` function has been split in `broadcastUdpIdentityPacket` and `sendUdpIdentityPacket` (the first calls the second).
Since we now require API 21, we can use setAudioAttributes instead of
the deprecated setAudioStreamType.
Since we already require WAKE_LOCK for the SMS plugin, we can use it
here to prevent the screen from sleeping.
The version of the library we used stopped working in 2020 when the names
database it tries to download got deleted from the master branch of their
Github repo. There's a newer version, but it seems to have lost the
fetch-from-the-internet functionality (it only bundles a list of names) and
for some reason it crashes when I tested it (I've opened an issue on their
repo). Since Google now provides a CSV with all the Android device names
that exist, I've replaced the library by my own function that downloads the
CSV file (~3MB) in the first run of the app and looks for the name there.
By passing a port the implementation of DatagramSocket already binds to
it, making it fail if the port was already in use even if we did
setReuseAddress because that happened after binding.
And only create directories for languages that have a translation.
Otherwise, fastlane crashes trying to upload the translations.
After merging this I will manually delete the "bad" translations in the fastlane directory.
Creates .pot files from txt files in the en-US store metadata and then
does the oposite for po files translated to the respective languages.
This should allow the translation teams to translate the store descriptions.
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+.
We don't want to crash if we get onNetworkChange before tcpServer has been
initialized, however the way to do it was wrong because the exception was
being thrown from a new thread.
broadcastUdpPacket will throw if setupTcpListener isn't successful, and
at that point we no longer know the real issue. Re-throw exceptions in
setupTcpListener so we can see what goes wrong.
This is read by F-Droid, so it should fix our app not having an icon or
having outdated screenshots there.
Also, this can be used to update the Play Store by doing:
fastlane supply --version-code <version code> --json-key <path to key>
In a future, it would be nice to update the StaticMessages.sh script so
it converts the app description here to .pot and back so we can have KDE
localization teams translate it and updates are automatically picked up.
When playing music on Windows, we receive MPRIS player updates ~once per
second. This calls the MprisMediaSession updateMediaNotification function
which then calls updateCurrentPlayer which used to call
SystemVolumeProvider's startTrackingVolumeKeys (now renamed to
startListeningForSinks) which is quite bad because on each call:
* It would add yet another copy of this to the listeners list
* It would send a network packet to get the sinks from the other device
Now we only call startListeningForSinks when the tracked player changes.
Fixes the bug described in !359. Since we made sending packets sequential
in !90 (including the payload part of the packet) we could be blocking the
queue for up to 10 seconds if the other end didn't fetch our payload.
This makes the payload part async by default but keeps the option to make
it sync, since we want that behavior in CompositeUploadFileJob.
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.
## Summary
Gradle version bump in 921d0ee884 (probably) is incompatible with Java 11.
Fix Gitlab CI by increasing Java version, as required by latest Gradle version.
## Test Plan
### Before:
Gitlab CI does not work, complaining about Java version. See for example: https://invent.kde.org/network/kdeconnect-android/-/jobs/950701
### After:
Gitlab CI does work
TLSv1.2 is supported on all the Android versions we support now.
TLSv1.3 is only supported in API 29+. Although we could conditionally
enable it on 29+, it seems to cause problems (disconnects & reconnects
when the LanLink gets refreshed) also on newer devices.
Missing break statements causes sync issues and SMS to be parsed as MMS and leads to the URI of a SMS not being found within the MMS content and SMS sync failing.
This reverts commit 7efb1f81b5.
For some weird reason, mina-sshd works fine without desugaring NIO on
Android 5 but fails with `java.lang.NoClassDefFoundError: Failed resolution
of: Ljava/nio/channels/AsynchronousChannelGroup;` before reverting this
Apply Material3 to dialogs, image buttons, switches and preferences.
Merge the landscape and portrait layouts for the MPRIS controls.
Move setting theme to application start instead of applying to every activity.
- Add Monet dynamic colors on the app's `onCreate()`
- Set parent in styles.xml to `Theme.Material3.DayNight.NoActionBar`
- Use `MaterialAlertDialogBuilder`
- In the About and About KDE fragments, it uses the M3 elevated style instead of outlines
- In `edit_text_alert_dialog_view.xml`, it uses the default theme style instead of specifying the one from MaterialComponents
- Added a todo in the settings fragment: Preference dialogs don't yet use the M3 style.
It complements https://invent.kde.org/network/kdeconnect-android/-/merge_requests/273, though the way that merge request accomplishes color theming is the one from before the onCreate dynamics color method
Since Android 8, this ID is stable across reinstalls of the app. This
causes other devices that already were paired with us to find a cert
mismatch and refuse to communicate with us after a reinstall or data wipe.
* Remove usage of deprecated WiFi ConnectivityManager
* Only listen for non-cellular network changes (where we can find devices)
* Do not listen for network changes also from PairingFragment
## Summary
This MR adds gyro mouse capability, which allows you to move the cursor of a connected device by simply moving the connected phone. It uses standard Android gyroscope sensors. Mainly aimed at usage with computers attached to very large screens (e.g. TV's), as using the touchpad as-is can feel somewhat unnatural.
While it does attempt pretty much the same thing as !285, this MR attempts to reduce redundancy as much as possible by simply extending the existing MousePadPlugin instead.
Tested on a Xiaomi Redmi Note 11, on a Samsung A71, and on a laptop running Arch Linux and KDE Plasma 5.27.3
## Test Plan
1. Make sure the 'Remote Input' plugin is enabled on the Android device.
2. Make sure the 'Virtual Input' plugin is enabled on the target device.
3. Open Plugin Settings -> Remote Input for the target device.
2. Enable the toggle for Gyro mouse.
3. Exit settings and go to the Remote Input activity for the target device.
4. Try moving the device around in 3D space.
5. Confirm that the mouse pointer moves predictably.
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
Add a debug and test CI. As the test coverage today is not much to get excited about, this is mostly a check that the app still builds, as well as a convenient way to download the prebuilt app for testing.
SpongyCastle was a fork of BouncyCastle needed before Android 3.0 because
of a conflict with Android's own version of BC. It's no longer needed and
rarely receives updates anymore [1]. Furthermore the version we were using
was from 2015 and had security issues (although I'm not sure we were
affected by them since we only use it to generate certificates).
With this change we now also use Java's standard library to read the certs
from a byte[] since the standard CertificateFactory can already do that.
[1] https://github.com/rtyley/spongycastle/issues/34
This fixes the bug introduced in f97216 which prevented configuring storage
locations because the plugin wasn't returned by `getPlugin` when there are
no storage locations present.
* Do not ask for WRITE_EXTERNAL_STORAGE in Android 11+ (writing to "Downloads" is [allowed by default since 11](https://stackoverflow.com/questions/70248631/starting-from-android11-do-i-need-to-comply-to-androids-saf-just-to-even-creat)).
* Do not check for permissions before receiving a file. Try and let it error out, instead of silently doing nothing.
* Fix not offering to open content:// urls (we checked the URLs to be file:// urls to then convert them to content://).
* Better permission explanation text.
Removes conditional code for older Android versions (IceCreamSandwitch, JellyBean, KitKat, Lollipop) since we no longer support Android older than Lollipop (5.0).
This doesn't remove KitKat support in the SFTP plugin since it's a bit more convoluted. It will be done in a separate MR.
On Android 10 and above, Clipboard needs to be manually sent. Recently the app was shipped with the patches so that users can use adb to grant the required permissions for automatic clipboard propagation.
In case the permissions were granted for automatic clipboard propagation, 'Send Clipboard' option was hidden from persistent notification but was not removed from the DeviceFragment. This MR addresses this.
Certain implementations of the protocol (namely GSConnect) use UUIDS
for the device IDS/command keys, which contain hyphens in them. The
current implementation of RunCommandControlsProviderService (used for
the android 11 power menu command control things) gives the controls
unique IDS with "{deviceid}-{commandkey}" and then tries to split on the
hyphen, which obviously breaks if the device id or command key contain
hyphens. This patch changes it to uses colons to separate them instead.
Note that I've only tested this with GSconnect, but I see no reason why
it wouldn't work with the normal KDE connect implementation too, unless
it uses colons in IDs.
## Summary
Android apps which target SDK 31+ require specifying the mutability of any PENDING_INTENT. This is not supported in the upstream android-smsmms library: https://github.com/klinker41/android-smsmms/pull/193
Until the above PR is merged, we need a solution. I have pulled the code into https://invent.kde.org/sredman/android-smsmms and published the package in the Maven repository in gitlab.
BUG: 464392
## Test Plan
### Before:
Attempting to send an SMS or MMS message using kdeconnect-sms results in no message being sent, and an error being logged:
> V/Sending message: Sending new SMS
> E/Sending message: Exception
> java.lang.IllegalArgumentException: org.kde.kdeconnect_tp: Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent.
> Strongly consider using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some functionality depends on the PendingIntent being mutable, e.g. if it needs to be used with inline replies or bubbles.
> at android.app.PendingIntent.checkFlags(PendingIntent.java:382)
> at android.app.PendingIntent.getBroadcastAsUser(PendingIntent.java:673)
> at android.app.PendingIntent.getBroadcast(PendingIntent.java:660)
> at com.klinker.android.send_message.Transaction.sendSmsMessage(Transaction.java:267)
> at com.klinker.android.send_message.Transaction.sendNewMessage(Transaction.java:158)
> at com.klinker.android.send_message.Transaction.sendNewMessage(Transaction.java:172)
> at org.kde.kdeconnect.Plugins.SMSPlugin.SmsMmsUtils.sendMessage(SmsMmsUtils.java:188)
> at org.kde.kdeconnect.Plugins.SMSPlugin.SMSPlugin.onPacketReceived(SMSPlugin.java:414)
> at org.kde.kdeconnect.Device.onPacketReceived(Device.java:570)
> <snipped for brevity>
### After:
SMS and MMS sends normally.
## Summary
Fix a logic error in the SMS plugin which caused it to skip the addresses of other targets when reporting group messages.
Notionally, this bug originated with the logic change in !197, where everything switched to using the android-smsmms library.
BUG: 464555
## Test Plan
### Before:
Group messages would be returned as single-target messages between you and the sender, meaning the desktop app would have a bad time showing them.
### After:
Group messages are returned with the appropriate list of addresses, the desktop app groups them appropriately.
With the old logic, the mostRecentTimestamp would effectively only be updated once, the first time the app noticed an SMS/MMS. This means that, until the app was next closed, it would return every message sent or received after that timestamp. Since the app doesn't crash as often as it used to, this can grow to a quite significant number of messages.
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.
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.
## Summary
Since a lot of devices now have Android 13, some users might want support for the new themed app icons.
This adds support for these, by adding a monochrome drawable (just the default icon with only the phone border and K) in `res/drawable-v24/ic_launcher_monochrome.xml` and then referencing this in `res/minimap-anydpi-v26/ic_laucher(_round).xml`.
## Test Plan
This can be tested by simply compiling and installing the app as usual on any device running Android 13.
After installing the app, the option for an adaptive colour theme will need to be enabled:
- OneUI5: Long-press home screen > Wallpaper and Style > Colour palette > enable colour palette and check "Apply palette to app icons"
- Pixel: Long-press home screen > Wallpaper & style > check "Themed icons"
The app icon should now follow the system theme (on some devices only on home screen, on others both home screen and app drawer).

## Summary
Clean up a bunch of lint errors in SMSHelper.java. Some of these are null issues which in theory might prevent a crash.
## Test Plan
No functional changes are expected. Fetching SMS still works for me.
## Summary
Spawning new threads in Java is costly. This MR aims to use a common thread pool instead.
I've replaced all cases where a new thread is started just to perform a task in the background. This does not include cases where a reference to the newly created thread is kept as a part of application logic – this is probably a problem in itself, but it exceeds the scope of this quick optimization. ;)
There was a couple of cases where a new thread was spawned just to sleep for a while an then change the state on a View on the main thread. I've replaced those with posting those deferred tasks to the View's message queue.
## Test Plan
Everything should work the same as it has before, just a bit faster and easier on the memory.
Colors don't work in some cards, menus and the hamburger menu
## Summary
I'm trying to make KDEConnect pull colours from the Material 3.0
wallpaper in Android 12. I've managed to do this to an extent by editing
the xml files in res/values*. There are, however, certain UI elements
that do not respond to the changes I've made, with no obvious files
where their colours may be changed.
## Screenshots
### The devices screen looks great (Except "KDE Connect Devices" in the
App bar isn't themed.)

### The hamburger menu has a white color in light mode. Don't know where
this is set and how to change it

### Three dot menu has a white colour

### Add new devices looks good too

### Not the popup menus though

### Cards in the About section are still white

### Dark mode works fine

### But again, some UI elements like the hamburger menu aren't themed.

I'll keep trying to figure out how to make these elements to their
proper colours, but I've done a lot of searching through the source and
couldn't figure out how. I'm absolutely new to Android development. Help
please.
## Test Plan
For the changes made thus far, none are needed.
## Summary
Since !158, fetching messages has been painfully slow. This is because, instead of making one cursor (database) call, we needed to make two per conversation.
Unless someone finds a conversations URI which works on Samsung devices and reliably returns data, there isn't much we can do about that. What we can do, is return each conversation more quickly to get the UI populated and to prevent blocking the main thread forever.
This attempts to return conversations ordered by most-recent first. If the conversations URI returns junk for the thread date, it will return in an undefined order.
## Test Plan
#itworksforme
implementation'com.jakewharton:disklrucache:2.0.2'//For caching album art bitmaps
implementation'com.jaredrummler:android-device-names:1.1.9'//To get a human-friendly device name
implementation'org.apache.sshd:sshd-core:0.14.0'
implementation'org.apache.mina:mina-core:2.0.19'//For some reason, makes sshd-core:0.14.0 work without NIO, which isn't available until Android 8 (api 26)
//implementation('com.github.bright:slf4android:0.1.6') { transitive = true } // For org.apache.sshd debugging
Nəzərə alın ki, bu tətbiqin işləməsi üçün kompyuterinizə KDE Connect-i quraşdırmalısınız və sonuncu funksiyaların işləməsi üçün İş masası və Android versiyalarını sonuncu versiyaya eyni şəkildə yeniləməlisiniz.
Bu tətbiq açıq qaynaq layihəsinin bir hissəsidir və ona töhvə verənlərin sayəsində mövcuddur. Mənbə kodunu əldə etmək üçün veb-səhifəyə daxil olun.
El KDE Connect proporciona un conjunt de característiques per a integrar el flux de treball entre dispositius:
- Porta-retalls compartit: copieu i enganxeu entre els dispositius.
- Compartiu fitxers i URL a l'ordinador des de qualsevol aplicació.
- Obteniu notificacions de trucades entrants i missatges SMS al vostre PC.
- Ratolí tàctil virtual: utilitzeu la pantalla del telèfon com a ratolí tàctil de l'ordinador.
- Sincronització de notificacions: llegiu les notificacions de l'Android a l'escriptori.
- Control remot multimèdia: utilitzeu el telèfon com a control remot dels reproductors multimèdia Linux.
- Connexió Wi-Fi: no cal connexió USB ni Bluetooth.
- Encriptatge TLS d'extrem a extrem: la informació és segura.
Tingueu en compte que haureu d'instal·lar el KDE Connect a l'ordinador perquè aquesta aplicació funcioni, i mantingueu actualitzada la versió d'escriptori amb la versió de l'Android perquè funcionin les últimes característiques.
Informació dels permisos confidencials:
* Permís d'accessibilitat: requerit per rebre l'entrada des d'un altre dispositiu per controlar el telèfon Android, si utilitzeu la característica d'entrada remota.
* Permís d'ubicació en segon pla: requerit per saber a quina xarxa WiFi esteu connectat, si utilitzeu la característica xarxes de confiança.
El KDE Connect mai envia cap informació a KDE ni a cap tercer. El KDE Connect envia dades des d'un dispositiu a l'altre directament utilitzant la xarxa local, mai a través d'Internet, i utilitzant l'encriptatge d'extrem a extrem.
Aquesta aplicació forma part d'un projecte de codi obert i existeix gràcies a totes les persones que hi han contribuït. Visiteu el lloc web per aconseguir el codi font.
KDE Connect poskytuje sadu vlastností pro vzájemnou integraci vašich zařízení:
- Sdílená schránka: kopírujte a vkládejte z jednoho zařízení na druhé.
- Sdílejte soubory a odkazy z jakékoliv aplikace na váš počítač.
- Přijímejte upozornění na příchozí hovory nebo SMS na vašem PC.
- Virtuální touchpad: Používejte obrazovku svého telefonu jako touchpad počítače.
- Synchronizace upozornění: Čtěte upozornění z vašeho Androidu na počítači.
- Vzdálené ovládání multimédií: Používejte svůj telefon jako ovladač přehrávače na Linuxu.
- Připojení WiFi: Není potřeba kabel USB ani Bluetooth.
- Koncové šifrování TLS: Vaše informace jsou v bezpečí.
Prosím pamatujte, že pro správnou funkci této aplikace je nutné abyste na vašem počítači měli nainstalován KDE Connect a udržovali jej aktuální zde i na Androidu.
Informace o citlivých oprávněních:
* Oprávnění přístupnosti: Nutné pro příjem vstupu z jiného zařízení aby mohlo ovládat váš telefon Android pokud používáte vlastnost Vzdálený vstup.
* Oprávnění o poloze na pozadí: Je potřebné pro rozpoznání, ke které síti WiFi jste připojeni, pokud používáte funkci Důvěryhodné sítě.
KDE Connect nikdy neposílá KDE ani nikomu jinému jakékoliv informace. KDE Connect odesílá data z jednoho zařízení druhému přímo přes místní síť, nikdy přes internet, a výhradně s použitím koncového šifrování.
Tato aplikace je součástí Open Source projektu a existuje jenom díky přispěvatelům. Zdrojové soubory naleznete na webových stránkách.
KDE Connect provides a set of features to integrate your workflow across devices:
- Shared clipboard: copy and paste between your devices.
- Share files and URLs to your computer from any app.
- Get notifications for incoming calls and SMS messages on your PC.
- Virtual touchpad: Use your phone screen as your computer's touchpad.
- Notifications sync: Read your Android notifications from the desktop.
- Multimedia remote control: Use your phone as a remote for Linux media players.
- WiFi connection: no USB wire or bluetooth needed.
- End-to-end TLS encryption: your information is safe.
Please note you will need to install KDE Connect on your computer for this app to work, and keep the desktop version up-to-date with the Android version for the latest features to work.
Sensitive permissions information:
* Accessibility permission: Required to receive input from another device to control your Android phone, if you use the Remote Input feature.
* Background location permission: Required to know to which WiFi network you are connected to, if you use the Trusted Networks feature.
KDE Connect never sends any information to KDE nor to any third party. KDE Connect sends data from one device to the other directly using the local network, never through the internet, and using end to end encryption.
This app is part of an open source project and it exists thanks to all the people who contributed to it. Visit the website to grab the source code.
KDE Connect provides a set of features to integrate your workflow across devices:
- Shared clipboard: copy and paste between your devices.
- Share files and URLs to your computer from any app.
- Get notifications for incoming calls and SMS messages on your PC.
- Virtual touchpad: Use your phone screen as your computer's touchpad.
- Notifications sync: Read your Android notifications from the desktop.
- Multimedia remote control: Use your phone as a remote for Linux media players.
- WiFi connection: no USB wire or bluetooth needed.
- End-to-end TLS encryption: your information is safe.
Please note you will need to install KDE Connect on your computer for this app to work, and keep the desktop version up-to-date with the Android version for the latest features to work.
Sensitive permissions information:
* Accessibility permission: Required to receive input from another device to control your Android phone, if you use the Remote Input feature.
* Background location permission: Required to know to which WiFi network you are connected to, if you use the Trusted Networks feature.
KDE Connect never sends any information to KDE nor to any third party. KDE Connect sends data from one device to the other directly using the local network, never through the internet, and using end to end encryption.
This app is part of an open source project and it exists thanks to all the people who contributed to it. Visit the website to grab the source code.
KDE Connect provides a set of features to integrate your workflow across devices:
- Shared clipboard: copy and paste between your devices.
- Share files and URLs to your computer from any app.
- Get notifications for incoming calls and SMS messages on your PC.
- Virtual touchpad: Use your phone screen as your computer's touchpad.
- Notifications sync: Read your Android notifications from the desktop.
- Multimedia remote control: Use your phone as a remote for Linux media players.
- WiFi connection: no USB wire or bluetooth needed.
- End-to-end TLS encryption: your information is safe.
Please note you will need to install KDE Connect on your computer for this app to work, and keep the desktop version up-to-date with the Android version for the latest features to work.
This app is part of an open source project and it exists thanks to all the people who contributed to it. Visit the website to grab the source code.
KDE Connect proporciona una serie de funcionalidades para integrar tus flujos de trabajo entre distintos dispositivos:
- Portapapeles compartido: copia y pega entre tus dispositivos.
- Envía archivos y URLs a tu equipo desde cualquier aplicación.
- Recibe notificaciones de llamadas entrantes y mensajes SMS en tu PC.
- Panel táctil virtual: Usa la pantalla de tu teléfono como panel táctil de tu equipo.
- Sincronización de notificaciones: Lee tus notificaciones Android desde tu escritorio.
- Control remoto multimedia: Usa tu teléfono como mando a distancia de tus reproductores multimedia Linux.
- Conexión WiFi: no se necesitan cables USB o Bluetooth.
- Cifrado TLS extremo a extremo: tu información está a salvo.
Ten en cuenta que necesitas tener instalado KDE en tu equipo para que esta aplicación funcione, y mantener la versión de escritorio actualizada con la versión de Android para tener acceso a las nuevas funcionalidades.
Información de permisos:
* Permisos de acceso: Necesarios para recibir entradas desde otro dispositivo para controlar su dispositivo Android, si usa la funcionalidad de entrada remota.
* Permisos de localización en segundo plano: Necesarios para saber a que red WiFi está conectado, si usa la funcionalidad de redes confiables.
KDE Connect nunca envía ninguna información a KDE o a terceros. KDE Connect envía datos de un dispositivo a otro usando directamente la red local, nunca a través de internet, y usando cifrado extremo a extremo.
Esta aplicación es parte de un proyecto de código abierto y existe gracias a toda gente que ha contribuido a ella. Visita la página web para acceder al código fuente.
- Multimediaren urrutiko agintea: Erabili zure telefonoa Linuxeko euskarri jotzaileen urrutiko aginte gisa.
- Wi-Fi konexioa: Ez da USB kablerik edo bluetooth-ik behar.
- Muturren arteko TLS zifratzea: Zure informazioa seguru dago.
Kontuan izan, aplikazio hau ibil dadin KDE Connect zure ordenagailuan instalatu beharko duzula, eta mahaigaineko bertsioa Androideko bertsioarekin eguneratuta mantendu beharko duzula ezaugarri berrienak ibil daitezen.
Babes bereziko baimenei buruzko informazioa:
* Irisgarritasun baimena: Beharrezkoa zure Android telefonoa kontrolatzeko beste gailu baten sarrera jasotzeko, urrutiko sarrera ezaugarria erabiltzen baduzu.
* Atzeko planoko kokapen baimena: Beharrezkoa zein Wi-Fi sarera konektatuta zauden jakiteko, Konfiantzazko sareen ezaugarria erabiltzen baduzu.
«KDE Connect»ek ez dio sekula KDEri edo beste inori informaziorik bidaltzen. «KDE Connect»ek datuak gailu batetik beste batera zuzenean bidaltzen ditu sare lokala erabiliz, sekula ez Internet bidez, eta betiere muturren artean zifratuta.
Aplikazio hau sorburu irekiko proiektu baten zati da, eta horretan lagundu duten lagun guztiei esker existitzen da. Bisitatu webgunea sorburu-kodea hartzeko.
– Langaton verkkoyhteys: USB-johtoa tai Bluetoothia ei tarvita.
– Päästä päähän -TLS-salaus: tietosi ovat turvassa.
Huomaa, että sovelluksen toimimiseksi KDE Connect tulee asentaa tietokoneeseen ja pitää ajan tasalla Android-version kanssa, jotta kaikki ominaisuudet toimisivat.
Sovellus on avoimen lähdekoodin projekti ja on olemassa sitä avustaneiden ihmisten ansiosta. Lähdekoodin saat noudettua kotisivulta.
KDE Connect provides a set of features to integrate your workflow across devices:
- Shared clipboard: copy and paste between your devices.
- Share files and URLs to your computer from any app.
- Get notifications for incoming calls and SMS messages on your PC.
- Virtual touchpad: Use your phone screen as your computer's touchpad.
- Notifications sync: Read your Android notifications from the desktop.
- Multimedia remote control: Use your phone as a remote for Linux media players.
- WiFi connection: no USB wire or bluetooth needed.
- End-to-end TLS encryption: your information is safe.
Please note you will need to install KDE Connect on your computer for this app to work, and keep the desktop version up-to-date with the Android version for the latest features to work.
Sensitive permissions information:
* Accessibility permission: Required to receive input from another device to control your Android phone, if you use the Remote Input feature.
* Background location permission: Required to know to which WiFi network you are connected to, if you use the Trusted Networks feature.
KDE Connect never sends any information to KDE nor to any third party. KDE Connect sends data from one device to the other directly using the local network, never through the internet, and using end to end encryption.
This app is part of an open source project and it exists thanks to all the people who contributed to it. Visit the website to grab the source code.
KDE Connect fornece funcionalidades para facilitar traballar con varios dispositivos:
- Portapapeis compartido: copie e peque entre dispositivos.
- Compartir ficheiros e enderezos URL co computador desde calquera aplicación.
- Obter notificacións de chamadas e mensaxes SMS no computador.
- Panel táctil virtual: use a pantalla do teléfono como panel táctil do computador.
- Sincronización de notificacións: lea as notificacións do teléfono desde o computador.
- Mando a distancia: use o teléfono como mando a distancia para reprodutores multimedia no computador.
- Conexión WiFi: non necesita cable USB nin Bluetooth.
- Cifrado TLS de punto a punto: a súa información está segura.
Para que esta aplicación funcione ten que instalar KDE Connect no computador, e manter a versión do computador e do móbil actualizadas para que funcionen as últimas funcionalidades.
Esta aplicación é parte dun proxecto de software libre e existe grazas á xente que colaborou no proxecto. Visite o sitio web para obter o código fonte.
KDE Connect fornisce una serie di funzionalità per integrare il tuo flusso di lavoro su tutti i dispositivi:
- Appunti condivisi: copia e incolla tra i tuoi dispositivi.
- Condividi file e URL sul tuo computer da qualsiasi applicazione.
- Ricevi notifiche per chiamate in arrivo e messaggi SMS sul tuo PC.
- Touchpad virtuale: utilizza lo schermo del telefono come touchpad del computer.
- Sincronizzazione delle notifiche: leggi le notifiche Android dal desktop.
- Telecomando multimediale: usa il tuo telefono come telecomando per i lettori multimediali per Linux.
- Connessione WiFi: non necessita di alcun cavo USB o bluetooth.
- Cifratura TLS end-to-end: le tue informazioni sono al sicuro.
Tieni presente che dovrai installare KDE Connect sul tuo computer affinché questa applicazione funzioni e mantenere la versione desktop aggiornata con la versione Android affinché funzionino le funzionalità più recenti.
Informazioni sensibili sui permessi:
* Permesso di accessibilità: necessaria per ricevere input da un altro dispositivo per controllare il tuo telefono Android, se utilizzi la funzione di immissione remota.
* Permesso alla posizione in background: necessaria per sapere a quale rete WiFi sei collegato, se utilizzi la funzionalità Reti affidabili.
KDE Connect non invia mai alcuna informazione a KDE né a terze parti. KDE Connect invia i dati da un dispositivo all'altro direttamente utilizzando la rete locale, mai attraverso Internet, e utilizzando la cifratura end-to-end.
Questa applicazione fa parte di un progetto open source ed esiste grazie a tutte le persone che vi hanno contribuito. Visita il sito web per ottenere il codice sorgente.
KDE Connect biedt een set mogelijkheden om uw werkmethode te integreren tussen apparaten:
- Gedeeld klembord: kopiëren en plakken tussen uw apparaten.
- Bestanden en URL's delen naar uw computer vanuit elke app.
- Meldingen krijgen over inkomende oproepen en SMS berichten op uw PC.
- Virtueel touchpad: uw telefoonscherm gebruiken als het touchpad van uw computer.
- Meldingen synchroniseren: lees uw Android meldingen vanaf het bureaublad.
- Afstandsbediening van multimedia: uw telefoon als een afstandsbediening gebruiken voor Linux mediaspelers.
- WiFi verbinding: geen USB-draad of bluetooth nodig.
- Eind-tot-eind TLS versleuteling: uw informatie is veilig.
Merk op dat u KDE Connect op uw computer moet installeren om deze app te laten werken, en de bureaubladversie up-to-date te houden met de Android-version om de laatste mogelijkheden te laten werken.
Informatie over gevoelige toestemmingen:
* Toegangsrechten: vereist om invoer te ontvangen uit een ander apparaat om uw Android telefoon te besturen, als u de functie Invoer van afstand gebruikt.
* Rechten voor achtergrondlocatie: vereist om te weten naar welk WiFi-netwerk u bent verbonden, als de functie vertrouwde netwerken gebruikt.
KDE Connect stuurt nooit enige informatie naar KDE noch naar een derde partij. KDE Connect verstuurt gegevens van het ene apparaat direct naar het andere met gebruik van het lokale netwerk, nooit via het internet en gebruikt eind-tot-eind versleuteling.
Deze app is onderdeel van een open-source-project en het bestaat dankzij alle mensen die er aan hebben bijgedragen. Bezoek de website om de broncode te verkrijgen.
O KDE Connect oferece um conjunto de funcionalidades para integrar os seus procedimentos com os dispositivos:
- Área de transferência partilhada: copiar e colar entre os seus dispositivos.
- Partilhar ficheiros e URL's para o seu computador a partir de qualquer aplicação.
- Obter notificações para as chamadas e mensagens SMS recebidas no seu PC.
- Rato por toque virtual: Use o ecrã do seu telefone como o rato do seu computador.
- Sincronização das notificações: Leia as notificações do seu Android no ambiente de trabalho.
- Comando à distância multimédia: Use o seu telefone como um comando para leitores multimédia do Linux.
- Ligação WiFi: sem necessitar de um cabo USB ou de Bluetooth.
- Encriptação TLS ponto-a-ponto: a sua informação está segura.
Lembre-se que terá de instalar o KDE Connect no seu computador para esta aplicação funcionar, e manter a versão no computador actualizada com a versão do Android para as últimas funcionalidades resultarem.
Esta aplicação faz parte de um projecto de código aberto e existe graças a todas as pessoas que contribuíram para elas. Visite a página Web para capturar o código-fonte.
O KDE Connect fornece um conjunto de recursos para integrar seu fluxo de trabalho entre dispositivos:
- Área de transferência compartilhada: copie e cole entre seus dispositivos.
- Compartilhe arquivos e URLs em seu computador a partir de qualquer app.
- Receba notificações de chamadas recebidas e mensagens SMS no seu PC.
- Touchpad virtual: use a tela do telefone como touchpad do computador.
- Sincronização de notificações: leia as notificações do seu Android na área de trabalho.
- Controle remoto multimídia: use seu telefone como controle remoto para reprodutores de mídia Linux.
- Conexão Wi-Fi: sem necessidade de cabos USB ou bluetooth.
- Criptografia TLS de ponta a ponta: suas informações estão seguras.
Observe que você precisará instalar o KDE Connect no seu computador para que este aplicativo funcione e mantenha a versão para desktop atualizada com a versão do Android para que os recursos mais recentes funcionem.
Informações a respeito de permissões especiais :
* Permissão de acessibilidade: necessária para receber entrada de outro dispositivo para controlar seu telefone Android, se você usar o recurso de entrada remota.
* Permissão de localização em segundo plano: necessária para saber a qual rede Wi-Fi você está conectado, se você usar o recurso de redes confiáveis.
O KDE Connect nunca envia nenhuma informação ao KDE nem a terceiros. O KDE Connect envia dados de um dispositivo para outro diretamente usando a rede local, nunca pela Internet e usando criptografia de ponta a ponta.
Este aplicativo faz parte de um projeto de código aberto e existe graças a todas as pessoas que contribuíram para ele. Visite o site para obter o código-fonte.
KDE Connect ponuja niz funkcij za integracijo delovnega procesa na različnih napravah:
- Skupno odložišče: kopirajte in lepite med napravami;
- Datoteke in URL-je lahko z računalnikom delite iz poljubnega programa;
- Prejemanje obvestil o dohodnih klicih in sporočilih SMS na računalniku;
- Virtualna sledilna plošča: uporabite zaslon telefona kot sledilno tablico na računalniku;
- Sinhronizacija obvestil: preberite obvestila iz sistema Android na namizju;
- Večpredstavnostni daljinski upravljalnik: uporabite telefon kot daljinski upravljalnik za večpredstavnostne predvajalnike na Linuxu;
- Šovezava WiFi: ne potrebujete žice USB ali bluetootha;
- Šifriranje TLS od enega konca do drugega: vaši podatki so varni.
Upoštevajte, da morate za delovanje tega programa na računalnik namestiti program KDE Connect in posodobiti namizno različico z različico za Android, da bodo delovale najnovejše funkcije.
Informacija o senzitivnih dovoljenjih:
* Dovoljenje za dostop: Zahtevano za prejemanje vhoda iz druge naprave za upravljanje vašega telefona z Androidom, če uporabljate zmožnost oddaljenega vhoda.
* Dovoljenje lokacije v zaledju: Zahtevano, da se ve na katero WiFi omrežje ste povezani, če uporabljate zmožnost zaupanja vrednega omrežja.
KDE Connect nikoli ne pošilja nobenih informacij niti za KDE niti kateri tretji stranki. KDE Connect pošilja podatke iz ene naprave do druge neposredno z uporabo lokalne mreže, nikoli preko interneta in z uporabo šifriranja od začetka do konca.
Ta program je del odprto-kodnega projekta in obstaja po zaslugi vseh ljudi, ki so prispevali. Obiščite spletno mesto in si zagotovite izvorno kodo.
KDE-anslut tillhandahåller en uppsättning funktioner för att integrera ditt arbetsflöde mellan apparater:
- Delat klippbord: kopiera och klistra in mellan dina apparater.
- Dela filer och webbadresser till din dator från valfritt program.
- Få underrättelse om inkommande samtal och SMS på din dator.
- Virtuell pekplatta: Använd din telefonskärm som din dators pekplatta.
- Synkronisering av underrättelser: Läs dina Android-underrättelser från skrivbordet.
- Multimediafjärrkontroll: Använd din telefon som fjärrkontroll för Linux-mediaspelare.
- WIFI-anslutning: Ingen USB-kabel eller Blåtand behövs.
- TLS-kryptering hela vägen: Din information är säker.
Observera att du måste installera KDE-anslut på din dator för att programmet ska fungerar och hålla skrivbordsversionen uppdaterad med Androidversionen för att de senaste funktionerna ska fungera.
Känslig behörighetsinformation:
* Åtkomsträttigheter: Krävs för att ta emot indata från en annan apparat för att styra din Android-telefon om du använder funktionen fjärrinmatning.
* Bakgrundsåtkomst av plats: Krävs för att veta vilket WIFI-nätverk du är ansluten till, om du använder funktionen Pålitliga nätverk.
KDE-anslut skickar aldrig någon information till KDE eller till någon tredje part. KDE-anslut skickar data från en apparat till en annan direkt med hjälp av det lokala nätverket, aldrig via Internet, och med kryptering hela vägen.
Det här programmet är en del av ett projekt med öppen källkod och det existerar tack vare alla de som bidragit till det. Besök webbplatsen för att hämta källkoden.
- Çoklu ortam uzaktan kumandası: Telefonunuzu Linux ortam oynatıcıları için uzaktan kumanda olarak kullanın.
- WiFi bağlantısı: USB kablosu veya Bluetooth gerekmez.
- Uçtan uca TLS şifrelemesi: Bilgileriniz güvende.
Bu uygulamanın çalışması için bilgisayarınıza KDE Bağlan'ı kurmanız ve güncel özelliklerin çalışması için masaüstü sürümünü Android sürümüyle güncel tutmanız gerekeceğini lütfen unutmayın.
Hassas izin bilgileri:
* Erişilebilirlik izni: Uzaktan Giriş özelliğini kullanıyorsanız Android telefonunuzu denetlemek üzere başka bir aygıttan giriş almak için gereklidir.
* Arka planda konum izni: Güvenilir Ağlar özelliğini kullanıyorsanız hangi Wi-Fi ağına bağlı olduğunuzu bilmek için gereklidir.
KDE Bağlan, KDE'ye veya herhangi bir üçüncü tarafa asla herhangi bir bilgi göndermez. KDE Bağlan, verileri bir aygıttan diğerine doğrudan yerel ağı kullanarak gönderir, asla interneti kullanmaz ve uçtan uca şifrelemeden yararlanır.
Bu uygulama, açık kaynaklı bir projenin parçasıdır ve ona katkıda bulunan tüm insanlar sayesinde var olur. Kaynak kodunu almak için web sitesini ziyaret edin.
- Синхронізація сповіщень: читайте ваші сповіщення Android на стільниці комп'ютера.
- Віддалене керування мультимедійними даними: користуйтеся вашим телефоном як пультом керування для програвачів мультимедійних даних у Linux.
- З'єднання WiFi: вам не знадобиться кабель USB або bluetooth.
- Міжвузлове шифрування TLS: ваші дані у безпеці.
Будь ласка, зауважте, що для роботи вам слід встановити KDE Connect на ваш комп'ютер і підтримувати актуальність версії з версією для Android, щоб працювали найсвіжіші можливості.
Відомості щодо прав доступу до конфіденційних даних:
* Права доступу до даних доступності: потрібні для отримання введених даних з іншого пристрою для керування вашим телефоном із Android, якщо ви користуєтеся можливістю віддаленого введення.
* Права доступу до базових даних щодо місця перебування: потрібні для визначення, з якою мережею WiFi вас з'єднано, якщо ви користуєтеся можливістю «Надійні мережі».
KDE Connect ніколи не надсилає жодних відомостей до KDE або будь-яких сторонніх осібабо організацій. KDE Connect надсилає дані з одного пристрою на інший безпосередньо з використанням локальної мережі, ніколи за допомогою інтернету, із використанням міжвузлового шифрування даних.
Ця програма є частиною проєкту із відкритим кодом і вона існує завдяки усім тим людям, які беруть участь у її створенні. Відвідайте сайт, щоб отримати початковий код програми.
# Translation of kdeconnect-android-store-full.po to Catalan (Valencian)
# Copyright (C) 2023 This_file_is_part_of_KDE
# This file is distributed under the license LGPL version 2.1 or
# version 3 or later versions approved by the membership of KDE e.V.
#
# Josep M. Ferrer <txemaq@gmail.com>, 2023.
#. extracted from ./metadata/android/en-US/full_description.txt
msgid ""
msgstr ""
"Project-Id-Version: kdeconnect-android\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-07-30 00:45+0000\n"
"PO-Revision-Date: 2023-07-30 10:56+0200\n"
"Last-Translator: Josep M. Ferrer <txemaq@gmail.com>\n"
"Language-Team: Catalan <kde-i18n-ca@kde.org>\n"
"Language: ca@valencia\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Lokalize 22.12.3\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
# skip-rule: common-hihan
msgid ""
"KDE Connect provides a set of features to integrate your workflow across "
"devices:\n"
"\n"
"- Shared clipboard: copy and paste between your devices.\n"
"- Share files and URLs to your computer from any app.\n"
"- Get notifications for incoming calls and SMS messages on your PC.\n"
"- Virtual touchpad: Use your phone screen as your computer's touchpad.\n"
"- Notifications sync: Read your Android notifications from the desktop.\n"
"- Multimedia remote control: Use your phone as a remote for Linux media "
"players.\n"
"- WiFi connection: no USB wire or bluetooth needed.\n"
"- End-to-end TLS encryption: your information is safe.\n"
"\n"
"Please note you will need to install KDE Connect on your computer for this "
"app to work, and keep the desktop version up-to-date with the Android "
"version for the latest features to work.\n"
"\n"
"Sensitive permissions information:\n"
"* Accessibility permission: Required to receive input from another device to "
"control your Android phone, if you use the Remote Input feature.\n"
"* Background location permission: Required to know to which WiFi network you "
"are connected to, if you use the Trusted Networks feature.\n"
"\n"
"KDE Connect never sends any information to KDE nor to any third party. KDE "
"Connect sends data from one device to the other directly using the local "
"network, never through the internet, and using end to end encryption.\n"
"\n"
"This app is part of an open source project and it exists thanks to all the "
"people who contributed to it. Visit the website to grab the source code.\n"
msgstr ""
"KDE Connect proporciona un conjunt de característiques per a integrar el "
"flux de treball entre dispositius:\n"
"\n"
"- Porta-retalls compartit: copieu i apegueu entre els dispositius.\n"
"- Compartiu fitxers i URL a l'ordinador des de qualsevol aplicació.\n"
"- Obteniu notificacions de tocades entrants i missatges SMS al vostre PC.\n"
"- Ratolí tàctil virtual: utilitzeu la pantalla del telèfon com a ratolí "
"tàctil de l'ordinador.\n"
"- Sincronització de notificacions: llegiu les notificacions d'Android a "
"l'escriptori.\n"
"- Control remot multimèdia: utilitzeu el telèfon com a control remot dels "
"reproductors multimèdia Linux.\n"
"- Connexió Wi-Fi: no cal connexió USB ni Bluetooth.\n"
"- Encriptació TLS d'extrem a extrem: la informació és segura.\n"
"\n"
"Cal tindre en compte que haureu d'instal·lar KDE Connect en l'ordinador "
"perquè esta aplicació funcione, i manteniu actualitzada la versió "
"d'escriptori amb la versió d'Android perquè funcionen les últimes "
"característiques.\n"
"\n"
"Informació dels permisos confidencials:\n"
"* Permís d'accessibilitat: requerit per a rebre l'entrada des d'un altre "
"dispositiu per a controlar el telèfon Android, si utilitzeu la "
"característica d'entrada remota.\n"
"* Permís d'ubicació en segon pla: requerit per a saber a quina xarxa WiFi "
"esteu connectat, si utilitzeu la característica xarxes de confiança.\n"
"\n"
"KDE Connect mai envia cap informació a KDE ni a cap tercer. KDE Connect "
"envia dades des d'un dispositiu a l'altre directament utilitzant la xarxa "
"local, mai a través d'Internet, i utilitzant l'encriptació d'extrem a "
"extrem.\n"
"\n"
"Esta aplicació forma part d'un projecte de codi obert i existix gràcies a "
"totes les persones que hi han contribuït. Visiteu el lloc web per a "
"aconseguir el codi font.\n"
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.