diff --git a/src/com/android/customization/model/clock/ClockManager.java b/src/com/android/customization/model/clock/ClockManager.java
index 180d3a0..4e77a49 100644
--- a/src/com/android/customization/model/clock/ClockManager.java
+++ b/src/com/android/customization/model/clock/ClockManager.java
@@ -17,6 +17,7 @@
 
 import android.content.ContentResolver;
 import android.provider.Settings.Secure;
+import android.text.TextUtils;
 
 import com.android.customization.module.ThemesUserEventLogger;
 
@@ -64,6 +65,9 @@
     @Override
     protected String lookUpCurrentClock() {
         final String value = Secure.getString(mContentResolver, CLOCK_FACE_SETTING);
+        if (TextUtils.isEmpty(value)) {
+            return value;
+        }
         try {
             final JSONObject json = new JSONObject(value);
             return json.getString(CLOCK_FIELD);
diff --git a/src/com/android/customization/picker/ClockFacePickerActivity.java b/src/com/android/customization/picker/ClockFacePickerActivity.java
index bfe2e5e..5065aef 100644
--- a/src/com/android/customization/picker/ClockFacePickerActivity.java
+++ b/src/com/android/customization/picker/ClockFacePickerActivity.java
@@ -64,12 +64,16 @@
                 return getIntent().getStringExtra(EXTRA_CLOCK_FACE_NAME);
             }
         };
-
-        final FragmentManager fm = getSupportFragmentManager();
-        final FragmentTransaction fragmentTransaction = fm.beginTransaction();
-        final ClockFragment clockFragment = ClockFragment.newInstance(getString(R.string.clock_title));
-        fragmentTransaction.replace(R.id.fragment_container, clockFragment);
-        fragmentTransaction.commitNow();
+        if (!mClockManager.isAvailable()) {
+            finish();
+        } else {
+            final FragmentManager fm = getSupportFragmentManager();
+            final FragmentTransaction fragmentTransaction = fm.beginTransaction();
+            final ClockFragment clockFragment = ClockFragment.newInstance(
+                    getString(R.string.clock_title));
+            fragmentTransaction.replace(R.id.fragment_container, clockFragment);
+            fragmentTransaction.commitNow();
+        }
     }
 
     @Override
