author | Lei Qian <lei.qian@amlogic.com> | 2017-12-29 09:46:33 (GMT) |
---|---|---|
committer | Gerrit Code Review <gituser@scgit.amlogic.com> | 2017-12-29 09:46:33 (GMT) |
commit | c4317e1c47154817feda1e744f73cc8668bf3c76 (patch) | |
tree | 9ad4105aa7439a7a0b06ad150ae32d0d341d578a | |
parent | 24e32c27fa32931e231b3929dd8498138bb7eaf8 (diff) | |
parent | 2e05d3c7e1d8eb339555cbef6e39e80f31dd0b61 (diff) | |
download | tv-c4317e1c47154817feda1e744f73cc8668bf3c76.zip tv-c4317e1c47154817feda1e744f73cc8668bf3c76.tar.gz tv-c4317e1c47154817feda1e744f73cc8668bf3c76.tar.bz2 |
Merge "PD#157047: tvserver: fixed rating parse error when have many ratings." into n-amlogic
-rw-r--r-- | core/java/com/droidlogic/app/tv/DroidLogicTvUtils.java | 45 |
1 files changed, 19 insertions, 26 deletions
diff --git a/core/java/com/droidlogic/app/tv/DroidLogicTvUtils.java b/core/java/com/droidlogic/app/tv/DroidLogicTvUtils.java index bb59110..ce3c56f 100644 --- a/core/java/com/droidlogic/app/tv/DroidLogicTvUtils.java +++ b/core/java/com/droidlogic/app/tv/DroidLogicTvUtils.java @@ -764,33 +764,26 @@ public class DroidLogicTvUtils if (dimension == -1 || value == -1) continue; if (region == 1) {//US ratings - if (dimension == 7 - /*&& ratingDescription != null - && ratingDescription.startsWith("MPAA-")*/ - ) { - TvContentRating r = TvContentRating.createRating(RatingDomain, "US_MV", - DroidLogicTvUtils.US_ContentRatingDimensions[dimension][value]); - RatingList.add(r); - Log.d(TAG, "add rating:"+r.flattenToString()); - } else /*if (ratingDescription != null - && ratingDescription.startsWith("TV-") - )*/ { - ArrayList<String> subRatings = new ArrayList<String>(); - for (int j = 1; j < ratings.length(); j++) { - JSONObject subRatingValues = ratings.optJSONObject(j); - int subDimension = subRatingValues.optInt("d", -1); - int subValue = subRatingValues.optInt("r", -1); - if (subDimension == -1 || subValue == -1) - continue; - subRatings.add(DroidLogicTvUtils.US_ContentRatingDimensions[subDimension][subValue]); + for (int j = 0; j < ratings.length(); j++) { + JSONObject subRatingValues = ratings.optJSONObject(j); + int subDimension = subRatingValues.optInt("d", -1); + int subValue = subRatingValues.optInt("r", -1); + + if (subDimension == -1 || subValue == -1) + continue; + if (subDimension == 7) { + TvContentRating r = TvContentRating.createRating(RatingDomain, "US_MV", + DroidLogicTvUtils.US_ContentRatingDimensions[subDimension][subValue]); + RatingList.add(r); + Log.d(TAG, "mv add rating:"+r.flattenToString()); + } else { + if (subDimension == 255) + subDimension = 0; + TvContentRating r = TvContentRating.createRating(RatingDomain, "US_TV", + DroidLogicTvUtils.US_ContentRatingDimensions[subDimension][subValue]); + RatingList.add(r); + Log.d(TAG, "tv add rating:"+r.flattenToString()); } - if (dimension == 255) - dimension = 0; - TvContentRating r = TvContentRating.createRating(RatingDomain, "US_TV", - DroidLogicTvUtils.US_ContentRatingDimensions[dimension][value], - subRatings.toArray(new String[subRatings.size()])); - RatingList.add(r); - Log.d(TAG, "add rating:"+r.flattenToString()); } } else if (region == 2) {//Canadian ratings for (int j = 0; j < ratings.length(); j++) { |