
Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net
KDroid is a program which allows you to view your contacts and text messages on your computer over a wifi/usb connection. It also allows you to send text messages from your pc.
You need to install the apk on your phone to be able to sync your data.
Git repositories:
git://github.com/machtelik/kdroid-desktop.git
git://github.com/machtelik/kdroid-android.git
Any suggestions for the GUI? Maybe something like Kopete? Let me know..
9 years ago
0.7:
- switched from udp to tcp
- added a few options in android app
- added dbus interface
- other bugfixes/small changes
0.6:
- fixed android service
- added command line options
- push new messages to the desktop
- other bugfixes
0.5:
- removed adb dependency
- added android application
- changed gui
0.2:
- added XML export
0.1:
- initial release
9 years ago
0.7:
- switched from udp to tcp
- added a few options in android app
- added dbus interface
- other bugfixes/small changes
0.6:
- fixed android service
- added command line options
- push new messages to the desktop
- other bugfixes
0.5:
- removed adb dependency
- added android application
- changed gui
0.2:
- added XML export
0.1:
- initial release
Schiwi
9 years ago
how about a button to make it easier? it could start an editable script containing
adb start-server
adb forward tcp:48564 tcp:48564
or something like this
Report
Kn3cHt
9 years ago
Report
Schiwi
9 years ago
Report
dovidhalevi
9 years ago
So some ideas? Maybe (after a delay), put up a dialog: connect phone, start adb, forward port. Only connect to the port after clicking OK.
Note that as a regular app, there should be no problem. As a plasmoid, the init must return so a timer would be started instead and after the delay, put up the dialog.
If not on localhost/usb (these might not necessarily imply each-other!), a dialog to connect the phone could be shown if connection not achieved. Cannot do it this way with the usb because the port will be busied.
Report
Kn3cHt
9 years ago
Report
dovidhalevi
9 years ago
Report
Kn3cHt
9 years ago
Report
dovidhalevi
9 years ago
APK: Button is, as suggested, good addition, though text is confusing. "start" or "stop" says what I want to do on press. "startet" (should be "started") is current status. But after first use, I know what is happening. Did get a (bogus?) android process stopped unexpectedly error. Since app did not close, must refer to the service that I manually stopped so you may need to set some flag at this stage since there is no error.
KDE:
1. Set to localhost. Adb devices finds phone, adb forward tcp:48564 tcp:48564 says cannot bind port. Does the app do this for me? What if I am not using usb?
2. Tried it anyway. Sent sms to this phone. Should fail. Got notification "unknown number" and the text in sync boxes and in KDE notifications. Can the program detect individual stati such as "busy," "not available," etc?
3. Sent two sms to family phones. No error or status returned.
4. Started sync. Button is now grayed but nothing has happened in a long time. No notifications.
5. Icon is now among the "hidden" system tray icons so does not appear unless I request these. Probably not appropriate.
6. System-tray might be an option. The app might be better a plasmoid (these can go to system tray now and take up less space there). Now, the akonadi data-engine is available and contacts can be synced to KDE.
Report
dovidhalevi
9 years ago
Sent SMS to my phone. RECEIVED two of them! Sent to my daughter's. Received that also so I guess the android message app shows a copy of sent message as well. In the "sync" boxes, get the same "unknown" which means no contact with this number (see below) but outgoing confirmations and incoming for mine, and the text. Bravo.
Now the sync. I have lots of contacts including myself and my daughter. The sync yielded only four contacts. The only criteria I can think of as these are relatively recent or recently called but even these should yield many more items. Since these are bare phone numbers with no addresses or other information rather than the contact name, nothing appears to the right but I have no accesses other than the SMSs to test.
So question is what indeed am I/should I be syncing and against what since sync implies two lists. I am obviously not viewing my contacts list.
Report
dovidhalevi
9 years ago
The Android did weird things to the format of the name fields of contacts imported from previous telephone. The four have in common: NO characters other than letters, spaces, period (and I guess comma would be ok as well). Older ones have semicolons (don't ask me why) and slashed numbers, i.e. /1.
Since such symbols could be manually entered as well, there is no reason they should be excluded. Take text received as-is.
Any ideas on how to bulk-edit the cruft would be welcome, maybe some combo of google and plaxo. But I should see them all, not just the four. Interesting.
Report
Kn3cHt
9 years ago
Most notifications won't work over usb, because it is not possible to start a tcp connection from the phone. So the android app can't connect to the desktop app, only the other way around.
I changed the try icon to passiv mainly because of this post: http://aseigo.blogspot.com/2011/08/system-tray-icon-hiding.html
What do you mean you recived two messages when you send one to yourself? Do you mean the notification on the phone?
Weired that you only see 4 contacts, because it should transfer the complete database. Maybe all the other contacts stored somewhere else?
As for the formating, i don't change it. I take the text the way it is stored in the database. The only thing i remove are newlines in the textmessage.
The problem is i can't reproduce most of the bugs you are experiencing, it is working fine here (Android 2.3.5, KDE 4.7.0). I'll try to make it more reliable on other devices, but it is not easy, because i can only test/debug it on my own device.
Report
dovidhalevi
9 years ago
Contacts are in three, count 'em, places: The "phone," the SIM and with gmail/google. Kdroid found the four contacts I had added which were on the "phone." Import/export options only worked one at a time so consolidating them (to where?) was impractical (I copied the four to the SIM, no help for kroid). "Go" let me copy everything onto the "phone." It does backups to the SDcard so that was not the "phone." The original contacts app imported/exported selected contacts to and from SIM or SDcard and created empty groups on the "phone." Whatever...
Can kdroid pull off the SIM as well? As for stuff in google's cloud, no point in going through the phone--akonadi support for google has been requested many times already.
Report
Kn3cHt
9 years ago
Report
dovidhalevi
9 years ago
2. Strange bugs and variations: The main problem with android is every device becomes it own show. Worse than testing web-pages on everyone's browser!
3. Unless one buys an atrix and the laptop dock, there are a few ways of using the phone from a computer. Kdroid can view (at least some) contacts, choose numbers and send sms. There is android-screencast (java code is on google) which shows the phone's screen in all its glory, can explore the file system and open a URL on the phone. For a rooted phone, it offers full mouse and keyboard control! There are two wifi-keyboard apps on the market: one uses port 8080 rendering it useless on most systems. The other uses a browser on 7777 and offers line or live text entry to running apps and incidentally, keyboard control of non-rooted!! phones using arrow keys for navigating the desktops and function keys for the four buttons. With this and screencast (not so nice split in two apps and the keyboard visual cues are there but weak), I can almost use the non-rooted phone from the computer. The wifi keyboard is on sourceforge on another of these (most market apps are not opensource).
Now, the plasmoid: The screen, the sync, the keyboard control, and on a rooted phone, full mouse control. Click the icon, show he screen. Some UI to show, use contacts but this can actually be done on the screen as well. Contact usefulness comes with akinadi. Sms could also revert to the screen, the keyboard feeding the text. Game? (If I succeed in retiring now, I would be interested in participating.)
Report
zubi
9 years ago
Report
Kn3cHt
9 years ago
Quote:
git clone git://github.com/Kn3cht/kdroid-desktop.git kdroid-desktop
cd kdroid-desktop
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug ..
make
make install
Report
zubi
9 years ago
CMake Error at /usr/share/cmake/Modules/FindKDE4.cmake:98 (MESSAGE):
ERROR: cmake/modules/FindKDE4Internal.cmake not found in
/home/niki/.kde4/share/apps;/usr/share/kde4/apps;/etc/kde4/share/apps
Call Stack (most recent call first):
CMakeLists.txt:3 (find_package)
CMake Warning (dev) in CMakeLists.txt:
No cmake_minimum_required command is present. A line of code such as
cmake_minimum_required(VERSION 2.8)
should be added at the top of the file. The version specified may be lower
if you wish to support older CMake versions for this project. For more
information run "cmake --help-policy CMP0000".
This warning is for project developers. Use -Wno-dev to suppress it.
-- Configuring incomplete, errors occurred!
Report
Kn3cHt
9 years ago
Report
dovidhalevi
9 years ago
GUI suggestion:
1. Have a start and stop service button (and possibly auto-restart on phone boot) button on the apk app so users know what they are doing.
2. More informative icon on KDE service bar, i.e. picture of cell-phone (three such icons on "devices"--actually on black background, these would only show the blue rectangle seen now) or an android symbol .
Report
Kn3cHt
9 years ago
You can test the git develop branch, i've changed a few things concerning the data transfer.
I think your idea to allow the user to start/stop the service is good, maybe I'll implement it later today.
As for the icon, i'm using the oxygen pda icon, because it's the most suitable out of the oxygen icons
Report
dovidhalevi
9 years ago
Yes, I noticed the icon. There are many KDE icons which do not show up nicely on the most common "oxygen" style black backgrounds.
I will try the git and see if it works.
Report
Kn3cHt
9 years ago
Report
dovidhalevi
9 years ago
However, since using Adb caters to TCP, using USB port forwarding instead of WIFI would seem to need TCP. I am probably not the only one with a router giving problems for this and similar applications.
Report
Kn3cHt
9 years ago
USB is also working now, set the IP to localhost and start "adb forward tcp:48564 tcp:48564"
Report
bigbrovar
9 years ago
Keep up the great work :)
Report