author | Zhiqiang Han <zhiqiang.han@amlogic.com> | 2017-11-21 14:15:17 (GMT) |
---|---|---|
committer | Zhiqiang Han <zhiqiang.han@amlogic.com> | 2017-12-04 07:21:46 (GMT) |
commit | 75f56270d3db012d8c8bea5aa3d21d994e423694 (patch) | |
tree | 3c0041dc29614a46e75c3db1f4bd8faed5e6420d | |
parent | 213f8c722b8a3ee6039bb0fcd3181d87ffbc17a6 (diff) | |
download | tv-75f56270d3db012d8c8bea5aa3d21d994e423694.zip tv-75f56270d3db012d8c8bea5aa3d21d994e423694.tar.gz tv-75f56270d3db012d8c8bea5aa3d21d994e423694.tar.bz2 |
ATSC: EPG: fixed epg update
PD# 154480
1. added debug info for epg
2. added Ratings comparation for epg events
3. fixed wrong parameter(id) in db update/delete operation
Change-Id: Ifff8a6cad74b40a4ac3d1dc965f79f1556639a54
Signed-off-by: Zhiqiang Han <zhiqiang.han@amlogic.com>
-rw-r--r-- | core/java/com/droidlogic/app/tv/DroidLogicTvInputService.java | 4 | ||||
-rw-r--r-- | core/java/com/droidlogic/app/tv/Program.java | 4 | ||||
-rw-r--r-- | core/java/com/droidlogic/app/tv/TvDataBaseManager.java | 24 |
3 files changed, 21 insertions, 11 deletions
diff --git a/core/java/com/droidlogic/app/tv/DroidLogicTvInputService.java b/core/java/com/droidlogic/app/tv/DroidLogicTvInputService.java index e330f66..7cac414 100644 --- a/core/java/com/droidlogic/app/tv/DroidLogicTvInputService.java +++ b/core/java/com/droidlogic/app/tv/DroidLogicTvInputService.java @@ -393,9 +393,11 @@ public class DroidLogicTvInputService extends TvInputService implements public void onSigChanged(TVInSignalInfo signal_info) { } + @Override public void StorDBonEvent(TvControlManager.ScannerEvent event) { - mTvStoreManager.onStoreEvent(event); + if (mTvStoreManager != null) + mTvStoreManager.onStoreEvent(event); } public void resetScanStoreListener() { diff --git a/core/java/com/droidlogic/app/tv/Program.java b/core/java/com/droidlogic/app/tv/Program.java index 6510497..7a41faf 100644 --- a/core/java/com/droidlogic/app/tv/Program.java +++ b/core/java/com/droidlogic/app/tv/Program.java @@ -13,8 +13,8 @@ import java.util.Objects; * A convenience class to create and insert program information into the database. */ public final class Program implements Comparable<Program> { - private static final long INVALID_LONG_VALUE = -1; - private static final int INVALID_INT_VALUE = -1; + public static final long INVALID_LONG_VALUE = -1; + public static final int INVALID_INT_VALUE = -1; private long mId; private long mChannelId; diff --git a/core/java/com/droidlogic/app/tv/TvDataBaseManager.java b/core/java/com/droidlogic/app/tv/TvDataBaseManager.java index ff17999..f619520 100644 --- a/core/java/com/droidlogic/app/tv/TvDataBaseManager.java +++ b/core/java/com/droidlogic/app/tv/TvDataBaseManager.java @@ -1264,7 +1264,7 @@ public class TvDataBaseManager { } for (Program p : newPrograms) { - Log.d(TAG, "epg todo:"+p.getTitle()+" desc:"+p.getDescription()+" chid:"+p.getChannelId()+" id:"+p.getId()+" ("+p.getStartTimeUtcMillis()+"-"+p.getEndTimeUtcMillis()); + Log.d(TAG, "epg todo:cid("+p.getChannelId()+")eid("+p.getProgramId()+")desc("+p.getTitle()+")desc2("+p.getDescription()+")time("+p.getStartTimeUtcMillis()+"-"+p.getEndTimeUtcMillis()+")"); } int oldProgramsIndex = 0; @@ -1294,7 +1294,7 @@ public class TvDataBaseManager { //Log.d(TAG, "ext desr:"+newProgram.getProgramId()); for (Program program : oldPrograms) { //Log.d(TAG, "old:"+program.getProgramId()); - if (program.getProgramId() == newProgram.getProgramId()) { + if (program.getProgramId() == newProgram.getProgramId()) {//same event id if (TextUtils.equals(program.getDescription(), newProgram.getDescription())) break; program.setDescription(newProgram.getDescription()); @@ -1302,7 +1302,15 @@ public class TvDataBaseManager { TvContract.buildProgramUri(program.getId())) .withValues(program.toContentValues()) .build()); - Log.d(TAG, "\tupdate descr"); + /*Program p = new Program.Builder(program) + .build(); + ops.add(ContentProviderOperation.newInsert(TvContract.Programs.CONTENT_URI) + .withValues(p.toContentValues()) + .build()); + ops.add(ContentProviderOperation.newDelete(TvContract.buildProgramUri(program.getId())) + .build()); + */ + Log.d(TAG, "\tepg etm:cid("+program.getChannelId()+")eid("+program.getProgramId()+")"); break; } } @@ -1318,7 +1326,7 @@ public class TvDataBaseManager { // NOTE: Use 'update' in this case instead of 'insert' and 'delete'. There could // be application specific settings which belong to the old program. ops.add(ContentProviderOperation.newUpdate( - TvContract.buildProgramUri(oldProgram.getProgramId())) + TvContract.buildProgramUri(oldProgram.getId())) .withValues(newProgram.toContentValues()) .build()); oldProgramsIndex++; @@ -1326,12 +1334,12 @@ public class TvDataBaseManager { updated = isProgramAtTime(newProgram, timeUtcMillis); - Log.d(TAG, "\tepg update:"+oldProgram.getId()+":cid("+newProgram.getChannelId()+")eid("+newProgram.getProgramId()+")desc("+newProgram.getTitle()+")time("+newProgram.getStartTimeUtcMillis()+"-"+newProgram.getEndTimeUtcMillis()+")"); + Log.d(TAG, "\tepg update:cid("+newProgram.getChannelId()+")eid("+newProgram.getProgramId()+")desc("+newProgram.getTitle()+")time("+newProgram.getStartTimeUtcMillis()+"-"+newProgram.getEndTimeUtcMillis()+")id("+oldProgram.getId()+")"); } else if (oldProgram.getEndTimeUtcMillis() < newProgram.getEndTimeUtcMillis()) { // No match. Remove the old program first to see if the next program in // {@code oldPrograms} partially matches the new program. ops.add(ContentProviderOperation.newDelete( - TvContract.buildProgramUri(oldProgram.getProgramId())) + TvContract.buildProgramUri(oldProgram.getId())) .build()); oldProgramsIndex++; @@ -1347,7 +1355,7 @@ public class TvDataBaseManager { updated = isProgramAtTime(newProgram, timeUtcMillis); - Log.d(TAG, "\tepg new:"+newProgram.getId()+":cid("+newProgram.getChannelId()+")eid("+newProgram.getProgramId()+")desc("+newProgram.getTitle()+")time("+newProgram.getStartTimeUtcMillis()+"-"+newProgram.getEndTimeUtcMillis()+")"); + Log.d(TAG, "\tepg new:cid("+newProgram.getChannelId()+")eid("+newProgram.getProgramId()+")desc("+newProgram.getTitle()+")time("+newProgram.getStartTimeUtcMillis()+"-"+newProgram.getEndTimeUtcMillis()+")id("+newProgram.getId()+")"); } } } else { @@ -1357,7 +1365,7 @@ public class TvDataBaseManager { updated = isProgramAtTime(newProgram, timeUtcMillis); - Log.d(TAG, "\tepg new:(old none)"+newProgram.getId()+":cid("+newProgram.getChannelId()+")eid("+newProgram.getProgramId()+")desc("+newProgram.getTitle()+")time("+newProgram.getStartTimeUtcMillis()+"-"+newProgram.getEndTimeUtcMillis()+")"); + Log.d(TAG, "\tepg new:(old none):cid("+newProgram.getChannelId()+")eid("+newProgram.getProgramId()+")desc("+newProgram.getTitle()+")time("+newProgram.getStartTimeUtcMillis()+"-"+newProgram.getEndTimeUtcMillis()+")id("+newProgram.getId()+")"); } newProgramsIndex++; } |