Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a6130cee authored by Jiabin Huang's avatar Jiabin Huang
Browse files

TIF: Improve android.media.tv.TvContract.Programs.Genres#decode

test results:
 random string(1000 channels) decode 1000 times on Nexus Player
 6.8 seconds => 1.4 seconds

Bug: 23307587
Change-Id: If309b0819d705d791c8fa9b177e6d2bd0019102e
parent 7d1ca068
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ import android.util.ArraySet;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.StringTokenizer;

/**
 * The contract between the TV provider and applications. Contains definitions for the supported
@@ -1318,7 +1319,13 @@ public final class TvContract {
             * @return canonical genre strings.
             */
            public static String[] decode(String genres) {
                return genres.split("\\s*,\\s*");
                StringTokenizer st = new StringTokenizer(genres, "\\s*,\\s*");
                String[] result = new String[st.countTokens()];
                int i = 0;
                while (st.hasMoreTokens()){
                    result[i++] = st.nextToken();
                }
                return result;
            }

            /**