summaryrefslogtreecommitdiff
path: root/android
diff options
context:
space:
mode:
authorArtur Dryomov <artur.dryomov@gmail.com>2013-09-13 02:23:03 +0300
committerArtur Dryomov <artur.dryomov@gmail.com>2013-09-13 02:44:00 +0300
commitdd887afe211fa85bcbc49541d3772d167ebbae48 (patch)
tree4b69a0e8c46b63665edc4fd01fbf053ebc7baf9e /android
parentec49173e3a566b0b29f4571c2bf44afb0a2a080e (diff)
Move the service binder to a static inner class.
Should help to avoid potential memory leaks. Change-Id: Ic9518af17d818eb439358cb86afa03e80ab9799e
Diffstat (limited to 'android')
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/activity/SlideShowActivity.java2
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/communication/CommunicationService.java20
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/fragment/ComputerConnectionFragment.java2
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/fragment/ComputersFragment.java2
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesGridFragment.java2
-rw-r--r--android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java2
6 files changed, 18 insertions, 12 deletions
diff --git a/android/sdremote/src/org/libreoffice/impressremote/activity/SlideShowActivity.java b/android/sdremote/src/org/libreoffice/impressremote/activity/SlideShowActivity.java
index 2d611340f8a7..b7c9e6dcf4c4 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/activity/SlideShowActivity.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/activity/SlideShowActivity.java
@@ -111,7 +111,7 @@ public class SlideShowActivity extends SherlockFragmentActivity implements Servi
@Override
public void onServiceConnected(ComponentName mComponentName, IBinder aBinder) {
- CommunicationService.CBinder aServiceBinder = (CommunicationService.CBinder) aBinder;
+ CommunicationService.ServiceBinder aServiceBinder = (CommunicationService.ServiceBinder) aBinder;
mCommunicationService = aServiceBinder.getService();
startSlideShow();
diff --git a/android/sdremote/src/org/libreoffice/impressremote/communication/CommunicationService.java b/android/sdremote/src/org/libreoffice/impressremote/communication/CommunicationService.java
index b4285f100cf3..ea03e5272325 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/communication/CommunicationService.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/communication/CommunicationService.java
@@ -20,6 +20,18 @@ import org.libreoffice.impressremote.util.BluetoothOperator;
import org.libreoffice.impressremote.util.Intents;
public class CommunicationService extends Service implements Runnable, MessagesListener, Timer.TimerListener {
+ public static final class ServiceBinder extends Binder {
+ private final CommunicationService mCommunicationService;
+
+ public ServiceBinder(CommunicationService aCommunicationService) {
+ mCommunicationService = aCommunicationService;
+ }
+
+ public CommunicationService getService() {
+ return mCommunicationService;
+ }
+ }
+
private IBinder mBinder;
private ServersManager mServersManager;
@@ -37,7 +49,7 @@ public class CommunicationService extends Service implements Runnable, MessagesL
@Override
public void onCreate() {
- mBinder = new CBinder();
+ mBinder = new ServiceBinder(this);
mServersManager = new ServersManager(this);
@@ -48,12 +60,6 @@ public class CommunicationService extends Service implements Runnable, MessagesL
mSlideShow = new SlideShow(mTimer);
}
- public class CBinder extends Binder {
- public CommunicationService getService() {
- return CommunicationService.this;
- }
- }
-
private void saveBluetoothState() {
mBluetoothState = BluetoothOperator.getState();
}
diff --git a/android/sdremote/src/org/libreoffice/impressremote/fragment/ComputerConnectionFragment.java b/android/sdremote/src/org/libreoffice/impressremote/fragment/ComputerConnectionFragment.java
index ec0eeb5d1ff5..b1ddc76c69be 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/fragment/ComputerConnectionFragment.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/fragment/ComputerConnectionFragment.java
@@ -135,7 +135,7 @@ public class ComputerConnectionFragment extends SherlockFragment implements Serv
@Override
public void onServiceConnected(ComponentName aComponentName, IBinder aBinder) {
- CommunicationService.CBinder aServiceBinder = (CommunicationService.CBinder) aBinder;
+ CommunicationService.ServiceBinder aServiceBinder = (CommunicationService.ServiceBinder) aBinder;
mCommunicationService = aServiceBinder.getService();
connectComputer();
diff --git a/android/sdremote/src/org/libreoffice/impressremote/fragment/ComputersFragment.java b/android/sdremote/src/org/libreoffice/impressremote/fragment/ComputersFragment.java
index 0c70f52b9b44..3ea19ce37124 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/fragment/ComputersFragment.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/fragment/ComputersFragment.java
@@ -124,7 +124,7 @@ public class ComputersFragment extends SherlockListFragment implements ServiceCo
@Override
public void onServiceConnected(ComponentName aComponentName, IBinder aBinder) {
- CommunicationService.CBinder aServiceBinder = (CommunicationService.CBinder) aBinder;
+ CommunicationService.ServiceBinder aServiceBinder = (CommunicationService.ServiceBinder) aBinder;
mCommunicationService = aServiceBinder.getService();
startComputersSearch();
diff --git a/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesGridFragment.java b/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesGridFragment.java
index 616fe40f1a81..1d32ed30430e 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesGridFragment.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesGridFragment.java
@@ -57,7 +57,7 @@ public class SlidesGridFragment extends SherlockFragment implements ServiceConne
@Override
public void onServiceConnected(ComponentName aComponentName, IBinder aBinder) {
- CommunicationService.CBinder aServiceBinder = (CommunicationService.CBinder) aBinder;
+ CommunicationService.ServiceBinder aServiceBinder = (CommunicationService.ServiceBinder) aBinder;
mCommunicationService = aServiceBinder.getService();
setUpSlidesGrid();
diff --git a/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java b/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java
index 29de2940ed1b..a655b33af670 100644
--- a/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java
+++ b/android/sdremote/src/org/libreoffice/impressremote/fragment/SlidesPagerFragment.java
@@ -61,7 +61,7 @@ public class SlidesPagerFragment extends SherlockFragment implements ServiceConn
@Override
public void onServiceConnected(ComponentName aComponentName, IBinder aBinder) {
- CommunicationService.CBinder aServiceBinder = (CommunicationService.CBinder) aBinder;
+ CommunicationService.ServiceBinder aServiceBinder = (CommunicationService.ServiceBinder) aBinder;
mCommunicationService = aServiceBinder.getService();
setUpSlidesPager();