├── .gitignore ├── LICENSE ├── README.md ├── RemoteBluetooth ├── .classpath ├── .project ├── AndroidManifest.xml ├── default.properties ├── proguard.cfg ├── res │ ├── drawable-hdpi │ │ └── icon.png │ ├── drawable-ldpi │ │ └── icon.png │ ├── drawable-mdpi │ │ └── icon.png │ ├── drawable │ │ └── icon.png │ ├── layout │ │ ├── custom_title.xml │ │ ├── device_list.xml │ │ ├── device_name.xml │ │ └── main.xml │ ├── menu │ │ └── option_menu.xml │ └── values │ │ └── strings.xml └── src │ └── com │ └── luugiathuy │ └── apps │ └── remotebluetooth │ ├── BluetoothCommandService.java │ ├── DeviceListActivity.java │ └── RemoteBluetooth.java └── RemoteBluetoothServer ├── .classpath ├── .project ├── .settings └── org.eclipse.jdt.core.prefs ├── lib ├── bluecove-2.1.0.jar └── bluecove-gpl-2.1.0.jar └── src └── com └── luugiathuy └── apps └── remotebluetooth ├── ProcessConnectionThread.java ├── RemoteBluetoothServer.java └── WaitThread.java /.gitignore: -------------------------------------------------------------------------------- 1 | bin* 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) [year] [fullname] 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | the Software, and to permit persons to whom the Software is furnished to do so, 10 | subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Java and Android Bluetooth 2 | ===================== 3 | 4 | This project makes your Android phone as a remote for your computer by connecting via Bluetooth 5 | 6 | ##Usage 7 | 8 | Run the RemoteBluetoothServer project in your PC and install the RemoteBluetooth app in your Android phone. 9 | 10 | ##Notes 11 | 12 | If you have to run the server in linux, then make sure you install the libbluetooth-dev package. 13 | 14 | If you have to run the server in mac, configure eclipse to pass the -d32 JVM argument. 15 | 16 | ##Contact 17 | [@luugiathuy](http://twitter.com/luugiathuy) 18 | -------------------------------------------------------------------------------- /RemoteBluetooth/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /RemoteBluetooth/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | RemoteBluetooth 4 | 5 | 6 | 7 | 8 | 9 | com.android.ide.eclipse.adt.ResourceManagerBuilder 10 | 11 | 12 | 13 | 14 | com.android.ide.eclipse.adt.PreCompilerBuilder 15 | 16 | 17 | 18 | 19 | org.eclipse.jdt.core.javabuilder 20 | 21 | 22 | 23 | 24 | com.android.ide.eclipse.adt.ApkBuilder 25 | 26 | 27 | 28 | 29 | 30 | com.android.ide.eclipse.adt.AndroidNature 31 | org.eclipse.jdt.core.javanature 32 | 33 | 34 | -------------------------------------------------------------------------------- /RemoteBluetooth/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | 8 | 9 | 10 | 12 | 13 | 14 | 15 | 16 | 17 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /RemoteBluetooth/default.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system use, 7 | # "build.properties", and override values to adapt the script to your 8 | # project structure. 9 | 10 | # Project target. 11 | target=android-7 12 | -------------------------------------------------------------------------------- /RemoteBluetooth/proguard.cfg: -------------------------------------------------------------------------------- 1 | -optimizationpasses 5 2 | -dontusemixedcaseclassnames 3 | -dontskipnonpubliclibraryclasses 4 | -dontpreverify 5 | -verbose 6 | -optimizations !code/simplification/arithmetic,!field/*,!class/merging/* 7 | 8 | -keep public class * extends android.app.Activity 9 | -keep public class * extends android.app.Application 10 | -keep public class * extends android.app.Service 11 | -keep public class * extends android.content.BroadcastReceiver 12 | -keep public class * extends android.content.ContentProvider 13 | -keep public class com.android.vending.licensing.ILicensingService 14 | 15 | -keepclasseswithmembernames class * { 16 | native ; 17 | } 18 | 19 | -keepclasseswithmembernames class * { 20 | public (android.content.Context, android.util.AttributeSet); 21 | } 22 | 23 | -keepclasseswithmembernames class * { 24 | public (android.content.Context, android.util.AttributeSet, int); 25 | } 26 | 27 | -keepclassmembers enum * { 28 | public static **[] values(); 29 | public static ** valueOf(java.lang.String); 30 | } 31 | 32 | -keep class * implements android.os.Parcelable { 33 | public static final android.os.Parcelable$Creator *; 34 | } 35 | -------------------------------------------------------------------------------- /RemoteBluetooth/res/drawable-hdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luugiathuy/Remote-Bluetooth-Android/f7fea1d9640a10208c08a5197e5321d1f1082250/RemoteBluetooth/res/drawable-hdpi/icon.png -------------------------------------------------------------------------------- /RemoteBluetooth/res/drawable-ldpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luugiathuy/Remote-Bluetooth-Android/f7fea1d9640a10208c08a5197e5321d1f1082250/RemoteBluetooth/res/drawable-ldpi/icon.png -------------------------------------------------------------------------------- /RemoteBluetooth/res/drawable-mdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luugiathuy/Remote-Bluetooth-Android/f7fea1d9640a10208c08a5197e5321d1f1082250/RemoteBluetooth/res/drawable-mdpi/icon.png -------------------------------------------------------------------------------- /RemoteBluetooth/res/drawable/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/luugiathuy/Remote-Bluetooth-Android/f7fea1d9640a10208c08a5197e5321d1f1082250/RemoteBluetooth/res/drawable/icon.png -------------------------------------------------------------------------------- /RemoteBluetooth/res/layout/custom_title.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 21 | 30 | 39 | -------------------------------------------------------------------------------- /RemoteBluetooth/res/layout/device_list.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 16 | 22 | 31 | 37 |