Implemented TODOs for analytics am: 00ff2c3dac
Original change: https://android-review.googlesource.com/c/platform/packages/services/BuiltInPrintService/+/3029204
Change-Id: Ic0a0346997ca3d5dcedcc2ea3c849d25e9b3ba5c
Signed-off-by: Automerger Merge Worker <[email protected]>
diff --git a/src/com/android/bips/LocalPrintJob.java b/src/com/android/bips/LocalPrintJob.java
index d9ff70d..630cda9 100644
--- a/src/com/android/bips/LocalPrintJob.java
+++ b/src/com/android/bips/LocalPrintJob.java
@@ -36,6 +36,7 @@
import com.android.bips.p2p.P2pUtils;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.StringJoiner;
import java.util.function.Consumer;
@@ -48,6 +49,8 @@
private static final boolean DEBUG = false;
private static final String IPP_SCHEME = "ipp";
private static final String IPPS_SCHEME = "ipps";
+ private static final String SHARE_TO_PRINT = "SP";
+ private static final String DIRECT_PRINT = "DP";
/** Maximum time to wait to find a printer before failing the job */
private static final int DISCOVERY_TIMEOUT = 2 * 60 * 1000;
@@ -411,10 +414,6 @@
Bundle bundle = new Bundle();
bundle.putString(BackendConstants.PARAM_JOB_ID, mPrintJob.getId().toString());
bundle.putLong(BackendConstants.PARAM_DATE_TIME, System.currentTimeMillis());
- // TODO: Add real location
- bundle.putString(BackendConstants.PARAM_LOCATION, "United States");
- // TODO: Add real user id
- bundle.putString(BackendConstants.PARAM_USER_ID, "userid");
bundle.putString(BackendConstants.PARAM_RESULT, result);
bundle.putLong(
BackendConstants.PARAM_ELAPSED_TIME_ALL, System.currentTimeMillis() - mStartTime);
@@ -430,15 +429,15 @@
Bundle bundle = new Bundle();
bundle.putString(BackendConstants.PARAM_JOB_ID, mPrintJob.getId().toString());
bundle.putLong(BackendConstants.PARAM_DATE_TIME, System.currentTimeMillis());
- // TODO: Add real location
- bundle.putString(BackendConstants.PARAM_LOCATION, "United States");
- bundle.putInt(
- BackendConstants.PARAM_JOB_PAGES,
+ bundle.putInt(BackendConstants.PARAM_JOB_PAGES,
mPrintJob.getInfo().getCopies() * mPrintJob.getDocument().getInfo().getPageCount());
- // TODO: Add real user id
- bundle.putString(BackendConstants.PARAM_USER_ID, "userid");
- // TODO: Determine whether the print job came from share to BIPS or from print system
- bundle.putString(BackendConstants.PARAM_SOURCE_PATH, "ShareToBips || PrintSystem");
+ bundle.putString(BackendConstants.PARAM_SOURCE_PATH,
+ isSharedPrint() ? SHARE_TO_PRINT : DIRECT_PRINT);
return bundle;
}
+
+ private boolean isSharedPrint() {
+ return Arrays.asList(ImagePrintActivity.getLastPrintJobId(),
+ PdfPrintActivity.getLastPrintJobId()).contains(mPrintJob.getInfo().getId());
+ }
}
diff --git a/src/com/android/bips/PdfPrintActivity.java b/src/com/android/bips/PdfPrintActivity.java
index 4463fae..2549779 100644
--- a/src/com/android/bips/PdfPrintActivity.java
+++ b/src/com/android/bips/PdfPrintActivity.java
@@ -28,6 +28,8 @@
import android.print.PrintAttributes;
import android.print.PrintDocumentAdapter;
import android.print.PrintDocumentInfo;
+import android.print.PrintJob;
+import android.print.PrintJobId;
import android.print.PrintManager;
import android.util.Log;
import android.webkit.URLUtil;
@@ -44,6 +46,8 @@
private static final String TAG = PdfPrintActivity.class.getSimpleName();
private static final boolean DEBUG = false;
+ private static PrintJobId sPrintJobId;
+
private CancellationSignal mCancellationSignal;
private String mJobName;
Uri mContentUri = null;
@@ -73,7 +77,8 @@
PrintAttributes printAttributes = new PrintAttributes.Builder()
.setColorMode(PrintAttributes.COLOR_MODE_COLOR)
.build();
- printManager.print(mJobName, new PdfAdapter(), printAttributes);
+ PrintJob printJob = printManager.print(mJobName, new PdfAdapter(), printAttributes);
+ sPrintJobId = printJob.getId();
}
@Override
@@ -149,4 +154,13 @@
return null;
}
}
+
+ /**
+ * Get the print job id from PrintManager created print job.
+ *
+ * @return A PrintJobId, can be null
+ */
+ static PrintJobId getLastPrintJobId() {
+ return sPrintJobId;
+ }
}
diff --git a/src/com/android/bips/ipp/StartJobTask.java b/src/com/android/bips/ipp/StartJobTask.java
index 10aba16..196c8c9 100755
--- a/src/com/android/bips/ipp/StartJobTask.java
+++ b/src/com/android/bips/ipp/StartJobTask.java
@@ -41,6 +41,7 @@
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
+import java.util.Objects;
/**
* A background task that starts sending a print job. The result of this task is an integer
@@ -279,6 +280,6 @@
}
private boolean isSharedPhoto() {
- return mJobInfo.getId().equals(ImagePrintActivity.getLastPrintJobId());
+ return Objects.equals(mJobInfo.getId(), ImagePrintActivity.getLastPrintJobId());
}
}
diff --git a/src/com/android/bips/jni/BackendConstants.java b/src/com/android/bips/jni/BackendConstants.java
index 3147050..f780303 100644
--- a/src/com/android/bips/jni/BackendConstants.java
+++ b/src/com/android/bips/jni/BackendConstants.java
@@ -168,8 +168,6 @@
public static final String PARAM_JOB_PAGES = "job_pages";
public static final String PARAM_SOURCE_PATH = "source_path";
public static final String PARAM_DATE_TIME = "date_time";
- public static final String PARAM_USER_ID = "user_id";
- public static final String PARAM_LOCATION = "location";
public static final String PARAM_RESULT = "result";
public static final String PARAM_ERROR_MESSAGES = "error_messages";
public static final String PARAM_ELAPSED_TIME_ALL = "elapsed_time_all";