summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/java/android/app/Profile.java13
-rw-r--r--services/java/com/android/server/ProfileManagerService.java5
2 files changed, 16 insertions, 2 deletions
diff --git a/core/java/android/app/Profile.java b/core/java/android/app/Profile.java
index 83367e6..96409b7 100644
--- a/core/java/android/app/Profile.java
+++ b/core/java/android/app/Profile.java
@@ -36,7 +36,7 @@ import java.util.UUID;
/**
* @hide
*/
-public final class Profile implements Parcelable {
+public final class Profile implements Parcelable, Comparable {
private String mName;
@@ -93,6 +93,17 @@ public final class Profile implements Parcelable {
readFromParcel(in);
}
+ public int compareTo(Object obj)
+ {
+ Profile tmp = (Profile) obj;
+ if (mName.compareTo(tmp.mName) < 0) {
+ return -1;
+ } else if (mName.compareTo(tmp.mName) > 0) {
+ return 1;
+ }
+ return 0;
+ }
+
/** @hide */
public void addProfileGroup(ProfileGroup value) {
if (value.isDefaultGroup()) {
diff --git a/services/java/com/android/server/ProfileManagerService.java b/services/java/com/android/server/ProfileManagerService.java
index 74e0f95..8c3f452 100644
--- a/services/java/com/android/server/ProfileManagerService.java
+++ b/services/java/com/android/server/ProfileManagerService.java
@@ -37,6 +37,7 @@ import android.os.ParcelUuid;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
+import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
@@ -284,7 +285,9 @@ public class ProfileManagerService extends IProfileManager.Stub {
@Override
public Profile[] getProfiles() throws RemoteException {
- return mProfiles.values().toArray(new Profile[mProfiles.size()]);
+ Profile[] tmpArr = mProfiles.values().toArray(new Profile[mProfiles.size()]);
+ Arrays.sort(tmpArr);
+ return tmpArr;
}
@Override