History log of /packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
bbb4110b455b3aa29106d5b4f0a37e1be8e09475 09-Apr-2015 Casper Bonde <c.bonde@samsung.com> Obex over L2CAP + SDP search API

Each profile had its own implementation of ObexTransport.
These implementations were implemented very similar, and
could easily be merged into a common implementation.

Additionally it will make it easier to adopt the transport
to support L2CAP.

The SDP functionality is implemented in a way that is scalable,
hence adding new record types is easy.
Intents are currently used to distribute the SDP search results,
as we have observed that the new client side profiles have been
located outside the Bluetooth package.
We strongly recommend to keep all bluetooth profiles within the
Bluetooth package, to acoid the need for exposing all bluetooth
interfaces through the Android framework. For instance this new
SDP create API is internal to Bluetooth, hence cannot be used by
the external profiles - hence they cannot use OBEX over L2CAP.

The SDP search currently supports:
- MAP both sides
- OPP server (only the server needs an SDP record)
- PBAP server (only the server needs SDP record)

The SDP create record currently supports:
- MAP both sides
- OPP server
- PBAP server
The new l2cap sockets introduces a new wrapper class for a rfcomm
and an l2cap socket.
The wrapper design:
- Creates two accept threads running while bluetooth is
turned on.
- When a connection is accepted the owner is asked wether or not
to accept the connection if rejected, the connection will be
rejected at obex level, else it will be accepted and the state
is changed to busy.
- Any further connections will be rejected at Obex level, until
the state is changed back to idle.

Notes tor executing the test cases:
Test OBEX using local pipes(no BT) or two bluetooth enabled
devices.

Test SDP using two Bluetooth enabled devices

Start server testcase first on one device, then start
the matching client test on the other device.

You cannot run all tests in one go, as they need to run
on multiple devices.

Edit the test sequesce to add/remove/modify the sequence
of OBEX operations to perform.

Use the new SDP record create interface.

Change-Id: I3941793f9843abf4afa5ffbee40d1d01c118b29b
Signed-off-by: Casper Bonde <c.bonde@samsung.com>
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
15d36984a79d6e35c659edb0efdf929f0b526bd5 01-Aug-2012 Fred <fredc@broadcom.com> Fix for BT turn on/off issues: NPE, FD/thread leaks, ANR.

This fix addresses numerous BT on/off issues found from the CTS test.
Fixed fD/pipe leak in various state machine Looper objects by calling quit() function.
Fixed cursor leak in AtPhonebook.
Change Pbap to stop the RFCOMM listener on the STATE_TURNING_OFF instead of STATE_OFF.
Removed several cleanup() methods causing NPE.
Reduced RFCOMM listener timeout from 3 seconds to 300ms between retry.
bug 6834336

Change-Id: I52423343d8f52f65294af0143f373871a9874d77
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
4852c5686229f1014e9851f4e9a3a19547581b45 10-May-2012 fredc <fredc@broadcom.com> Moved BluetoothAdapter.ACTION_STATE_CHANGED broadcast from AdapterService to BluetoothManagerService

Change-Id: Ic9911359c1d9e04a5d803807ea7cf4ad39616960
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
d288c0dac06748780916bf438b7c84482545672f 26-Apr-2012 fredc <fredc@broadcom.com> Backed out workaround for RFCOMM socket close issue when BT is turning off

Change-Id: I793fa2a0fa0127b6ff70aeb448c97c3cc9154d6f
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
31ba132491053bc86d419a7d51fc04af3299c076 26-Apr-2012 fredc <fredc@broadcom.com> Fixed Bluetooth on/off issues. Removed singleton instances causing issues when services reload. Updated adapter state machine

Change-Id: Ie1ff4284f507c7da102569f3c0acfd55612a5f6b
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
b5cc776c9353a203cdde97e62b25f05d9633d14c 19-Apr-2012 fredc <fredc@broadcom.com> Fixed BT on/off issue

Change-Id: I47cbac9fc694d5604a664f20170eeed90eeee8e6

Conflicts:

jni/com_android_bluetooth_btservice_AdapterService.cpp
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
3fafe61ef25c1899fdc817c52163aec16c31055c 19-Apr-2012 Ravi Nagarajan <nravi@broadcom.com> Memory profiling changes : Updated the Bluetooth code to handle cleaning up of object references (context, handlers, and collection objects ) during service cleanup.Memory profiling changes : Updated the Bluetooth code to handle cleaning up of object references (context, handlers, and collection objects ) during service cleanup.

Change-Id: I2b0235f71c1feaf32215b2aaf89a2e06d8fa7d73
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
9f0d856f41d443ec23d5aa2eecfc561d7a3c01d1 31-Mar-2012 fredc <fredc@broadcom.com> Initial checkin of OPP and PBAP

Change-Id: Ie43a26874bd5f0c00d69c2ce02430f4a16da327a
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
2a6bf35f603d12e6533a69c773ac258b0e84941f 02-Feb-2012 Jaikumar Ganesh <jaikumar@google.com> Comments opp and PBAP init code when BT gets enabled.

Change-Id: Id1b9329cb4dba7f4d4e5f478a775bcfd18a68a66
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
a930b6831d0c70b6c5d34e548e6b1dceaa6529a0 01-Nov-2010 Mohammad Shamsi <m.h.shams@gmail.com> code cleanup.
unused imports, local variabls and static constans removed from
com.android.bluetooth.opp package.

Change-Id: I0fd682a190221e216fac71723c05d3828b9fa42d
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
9d9e511fe7425fb3105ece227ecedb43d6333333 21-Sep-2009 Tao Liejun <L.J.Tao@motorola.com> Use new SDP API for OPP

Use new API BluetoothDevice.fetchUuidsWithSdp() to query SDP for un-paired device, and request SDP
update when Opp is not in cache.
Handle a concurrent case when incoming connection and file share happens together
Some other minor changes

Change-Id: I7ebf34801518867553551d8f7bba7ac62e22667e
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
888485a3f5fe991116c5536bb6d6903d47b63a70 31-Aug-2009 Tao Liejun <L.J.Tao@motorola.com> Cleanup Opp debug code

Stop Rfcomm polling
Delete a few unused functions
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
ce4d93666275df294cb073fe41de5b85932570a8 28-Aug-2009 Nick Pelly <npelly@google.com> Clean up Logging.

Use the pattern if (V) Log.v(...); for logging. The Android style prefers curly braces, but for log lines it is ok to use a one-liner to keep the code manageable.

Remove spaces from some log tags, and rename TAG BluetoothShareProvider to BluetoothOpp.

Rename LOGVV to V, and LOGV to D.

Just before ship we will change Constants.DEBUG and Constants.VERBOSE to false to compile out all the logging code.
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
1ac5507790a87810061a19dadec36eb328a222ea 07-Aug-2009 Tao Liejun <L.J.Tao@motorola.com> OPP update

Rewrite provider permission to allow LiveFolders work
Support file:// uri to share file
Support multiple share from gallery
Fully support sending file queue
Hold incoming connection for a while when OPP is busy instead of reject directly
Move notification update to a thread
Handle many error cases to display correct error messages
Improve server/client timeout
Delete empty file after reject incoming file
Support upper case incoming file extension
Avoid multiple mediascanner connections
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
41ef8d494511c040451f2f887cb31c3100746b61 07-Aug-2009 Nick Pelly <npelly@google.com> Bluetooth: Update Bluetooth.apk to match BT API change.

Split BluetoothDevice into BluetoothDevice and BluetoothAdapter.

BluetoothAdapter: Represents the local BT adapter. Operations on the local
adapter (start a scan, etc).
BluetoothDevice: Represents a remote BT device. Operations on remote devices
(pair, connect, etc).
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
52236de777c23788df8147de15912a57e8bc36dd 04-Aug-2009 Tao Liejun <L.J.Tao@motorola.com> Fix a few OPP issues

Grab wakelock for server session
Fix send small file bug
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
87f9a72cc2d9544f65eab18893f7dc0de4f6ee31 23-Jul-2009 Jaikumar Ganesh <jaikumar@google.com> Disable verbose logging.

TODO: We need to fix logging according to new verbose logging in OPP and PBAP.
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
6769b59d715ea98bd72eafcfea9acd2714a887da 15-Jul-2009 Tao Liejun <L.J.Tao@motorola.com> Make opp compile

Modify to make opp application compliable in new git
-change package name
-change manifest
-modify a few comments
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java
09e9cba205af60b3f42e7a4d891a7d1392e1f2a5 11-Jul-2009 Nick Pelly <npelly@google.com> Initial drop of Motorola Bluetooth OPP code.

Minor changes from Moto code:
- Added Motorola BSD license
- Moved com.motorola.bluetoothshare to com.android.bluetooth.opp
- Updated com.motorola.obex to javax.obex
- Moved Android.mk to Android.mk.hide: does not yet compile due to changes in
Obex library.
/packages/apps/Bluetooth/src/com/android/bluetooth/opp/BluetoothOppRfcommListener.java