Prevent crash when flattening ComponentKey to string with invalid user.

Bug: 22658306
Change-Id: I213d44e0bb22ac0617d46c80ab8cfec8f750a2cc
diff --git a/src/com/android/launcher3/util/ComponentKey.java b/src/com/android/launcher3/util/ComponentKey.java
index 6a7df43..b7aafae 100644
--- a/src/com/android/launcher3/util/ComponentKey.java
+++ b/src/com/android/launcher3/util/ComponentKey.java
@@ -64,8 +64,11 @@
      * Encodes a component key as a string of the form [flattenedComponentString#userId].
      */
     public String flattenToString(Context context) {
-        return componentName.flattenToString() + "#" +
-                UserManagerCompat.getInstance(context).getSerialNumberForUser(user);
+        String flattened = componentName.flattenToString();
+        if (user != null) {
+            flattened += "#" + UserManagerCompat.getInstance(context).getSerialNumberForUser(user);
+        }
+        return flattened;
     }
 
     @Override