diff --git a/briar-android/src/main/java/org/briarproject/briar/android/ScreenFilterMonitorImpl.java b/briar-android/src/main/java/org/briarproject/briar/android/ScreenFilterMonitorImpl.java
index 8ec4b3508fb77ad84a709427eb91eda8f03749f2..6acf7525572ff85f550a168a070c0f5df527a5e3 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/ScreenFilterMonitorImpl.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/ScreenFilterMonitorImpl.java
@@ -10,7 +10,6 @@ import android.content.pm.PackageInfo;
 import android.content.pm.PackageManager;
 import android.content.pm.PackageManager.NameNotFoundException;
 import android.content.pm.Signature;
-import android.support.annotation.Nullable;
 import android.support.annotation.UiThread;
 import android.support.v7.preference.PreferenceManager;
 
@@ -38,6 +37,7 @@ import java.util.concurrent.Future;
 import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.logging.Logger;
 
+import javax.annotation.Nullable;
 import javax.inject.Inject;
 
 import static android.Manifest.permission.SYSTEM_ALERT_WINDOW;
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/activity/BriarActivity.java b/briar-android/src/main/java/org/briarproject/briar/android/activity/BriarActivity.java
index 8178224499ebbf5f0945a18f129b919c42c7145c..e148db65b7c66379f74f9f94f5d40b420841cf17 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/activity/BriarActivity.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/activity/BriarActivity.java
@@ -3,7 +3,6 @@ package org.briarproject.briar.android.activity;
 import android.annotation.SuppressLint;
 import android.content.Intent;
 import android.os.Build;
-import android.support.annotation.Nullable;
 import android.support.v7.app.ActionBar;
 import android.support.v7.widget.Toolbar;
 import android.transition.Slide;
@@ -21,6 +20,7 @@ import org.briarproject.briar.android.panic.ExitActivity;
 
 import java.util.logging.Logger;
 
+import javax.annotation.Nullable;
 import javax.inject.Inject;
 
 import static android.content.Intent.FLAG_ACTIVITY_CLEAR_TASK;
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/blog/BlogActivity.java b/briar-android/src/main/java/org/briarproject/briar/android/blog/BlogActivity.java
index bfb689ef7013491aa1820ea4104a1a5135326bfb..5521b9bea4cbacae4635c12cfcff408dd08e40ed 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/blog/BlogActivity.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/blog/BlogActivity.java
@@ -2,7 +2,6 @@ package org.briarproject.briar.android.blog;
 
 import android.content.Intent;
 import android.os.Bundle;
-import android.support.annotation.Nullable;
 import android.support.v7.widget.Toolbar;
 import android.view.View;
 
@@ -15,6 +14,7 @@ import org.briarproject.briar.android.activity.BriarActivity;
 import org.briarproject.briar.android.fragment.BaseFragment.BaseFragmentListener;
 import org.briarproject.briar.android.sharing.BlogSharingStatusActivity;
 
+import javax.annotation.Nullable;
 import javax.inject.Inject;
 
 @MethodsNotNullByDefault
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/contact/ContactItemViewHolder.java b/briar-android/src/main/java/org/briarproject/briar/android/contact/ContactItemViewHolder.java
index 33cf42232e734d4ef6f7c500b1d29ab5e84ada26..839c0563b79a5eeaaa48150935d6c2de0bc8272b 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/contact/ContactItemViewHolder.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/contact/ContactItemViewHolder.java
@@ -1,6 +1,5 @@
 package org.briarproject.briar.android.contact;
 
-import android.support.annotation.Nullable;
 import android.support.annotation.UiThread;
 import android.support.v7.widget.RecyclerView;
 import android.view.View;
@@ -13,6 +12,8 @@ import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
 import org.briarproject.briar.R;
 import org.briarproject.briar.android.contact.BaseContactListAdapter.OnContactClickListener;
 
+import javax.annotation.Nullable;
+
 import im.delight.android.identicons.IdenticonDrawable;
 
 @UiThread
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/controller/SharingControllerImpl.java b/briar-android/src/main/java/org/briarproject/briar/android/controller/SharingControllerImpl.java
index c41df9f238704a16784b2c8c9437a32b0f664146..5c83206e504ea690582d6390b2ba45524711acc9 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/controller/SharingControllerImpl.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/controller/SharingControllerImpl.java
@@ -1,7 +1,5 @@
 package org.briarproject.briar.android.controller;
 
-import android.support.annotation.Nullable;
-
 import org.briarproject.bramble.api.contact.ContactId;
 import org.briarproject.bramble.api.event.Event;
 import org.briarproject.bramble.api.event.EventBus;
@@ -15,6 +13,7 @@ import java.util.Collection;
 import java.util.HashSet;
 import java.util.Set;
 
+import javax.annotation.Nullable;
 import javax.inject.Inject;
 
 @NotNullByDefault
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/fragment/SFDialogFragment.java b/briar-android/src/main/java/org/briarproject/briar/android/fragment/SFDialogFragment.java
index e20e814d685b249b2694aec1d85bf1ae6f33aa01..248d4c49ad7d914dceb5f26985b573ddf07bdaa8 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/fragment/SFDialogFragment.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/fragment/SFDialogFragment.java
@@ -3,7 +3,6 @@ package org.briarproject.briar.android.fragment;
 import android.app.Dialog;
 import android.content.DialogInterface;
 import android.os.Bundle;
-import android.support.annotation.Nullable;
 import android.support.v4.app.DialogFragment;
 import android.support.v7.app.AlertDialog;
 import android.text.TextUtils;
@@ -19,6 +18,8 @@ import org.briarproject.briar.android.activity.BaseActivity;
 
 import java.util.ArrayList;
 
+import javax.annotation.Nullable;
+
 @MethodsNotNullByDefault
 @ParametersNotNullByDefault
 public class SFDialogFragment extends DialogFragment {
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/fragment/SignOutFragment.java b/briar-android/src/main/java/org/briarproject/briar/android/fragment/SignOutFragment.java
index 7999679ae1fd8bcb71bb3427e573246b6e6061e6..8c014237a2055cd6fbeefd59e2ff3a58ce46c057 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/fragment/SignOutFragment.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/fragment/SignOutFragment.java
@@ -1,7 +1,6 @@
 package org.briarproject.briar.android.fragment;
 
 import android.os.Bundle;
-import android.support.annotation.Nullable;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
@@ -9,6 +8,8 @@ import android.view.ViewGroup;
 import org.briarproject.briar.R;
 import org.briarproject.briar.android.activity.ActivityComponent;
 
+import javax.annotation.Nullable;
+
 public class SignOutFragment extends BaseFragment {
 
 	private static final String TAG = SignOutFragment.class.getName();
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/privategroup/conversation/GroupMessageItem.java b/briar-android/src/main/java/org/briarproject/briar/android/privategroup/conversation/GroupMessageItem.java
index a64769fdff867379df3bc6ff08917eb4fddbcc74..408fd29ba83429e35cf584f9e1df209a2f388398 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/privategroup/conversation/GroupMessageItem.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/privategroup/conversation/GroupMessageItem.java
@@ -1,7 +1,6 @@
 package org.briarproject.briar.android.privategroup.conversation;
 
 import android.support.annotation.LayoutRes;
-import android.support.annotation.Nullable;
 import android.support.annotation.UiThread;
 
 import org.briarproject.bramble.api.identity.Author;
@@ -12,6 +11,7 @@ import org.briarproject.briar.R;
 import org.briarproject.briar.android.threaded.ThreadItem;
 import org.briarproject.briar.api.privategroup.GroupMessageHeader;
 
+import javax.annotation.Nullable;
 import javax.annotation.concurrent.NotThreadSafe;
 
 @UiThread
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/privategroup/creation/CreateGroupActivity.java b/briar-android/src/main/java/org/briarproject/briar/android/privategroup/creation/CreateGroupActivity.java
index 5e7a64f56432a42a93ac4d611f0f16e558e472a6..30e80f8298a4ea6012b5e1e1470720729af0469d 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/privategroup/creation/CreateGroupActivity.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/privategroup/creation/CreateGroupActivity.java
@@ -2,7 +2,6 @@ package org.briarproject.briar.android.privategroup.creation;
 
 import android.content.Intent;
 import android.os.Bundle;
-import android.support.annotation.Nullable;
 
 import org.briarproject.bramble.api.db.DbException;
 import org.briarproject.bramble.api.nullsafety.MethodsNotNullByDefault;
@@ -14,6 +13,8 @@ import org.briarproject.briar.android.controller.handler.UiResultExceptionHandle
 import org.briarproject.briar.android.privategroup.conversation.GroupActivity;
 import org.briarproject.briar.android.sharing.BaseMessageFragment.MessageFragmentListener;
 
+import javax.annotation.Nullable;
+
 @MethodsNotNullByDefault
 @ParametersNotNullByDefault
 public class CreateGroupActivity extends BaseGroupInviteActivity implements
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/privategroup/memberlist/MemberListItem.java b/briar-android/src/main/java/org/briarproject/briar/android/privategroup/memberlist/MemberListItem.java
index 11235ddbebb4253ce3e2255a7af5ca17f7a9d1ce..e916080bf272e85031a441b3a182051021e7dfdb 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/privategroup/memberlist/MemberListItem.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/privategroup/memberlist/MemberListItem.java
@@ -1,7 +1,5 @@
 package org.briarproject.briar.android.privategroup.memberlist;
 
-import android.support.annotation.Nullable;
-
 import org.briarproject.bramble.api.contact.ContactId;
 import org.briarproject.bramble.api.identity.Author;
 import org.briarproject.bramble.api.identity.Author.Status;
@@ -9,6 +7,7 @@ import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
 import org.briarproject.briar.api.privategroup.GroupMember;
 import org.briarproject.briar.api.privategroup.Visibility;
 
+import javax.annotation.Nullable;
 import javax.annotation.concurrent.NotThreadSafe;
 
 @NotThreadSafe
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/sharing/SharingStatusActivity.java b/briar-android/src/main/java/org/briarproject/briar/android/sharing/SharingStatusActivity.java
index 4fd258d45394cbb25061449127c3da03238cc13b..b07895d93965ee7d8c03754b0e5edbcb74bfbc5c 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/sharing/SharingStatusActivity.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/sharing/SharingStatusActivity.java
@@ -2,7 +2,6 @@ package org.briarproject.briar.android.sharing;
 
 import android.content.Intent;
 import android.os.Bundle;
-import android.support.annotation.Nullable;
 import android.support.annotation.StringRes;
 import android.support.v7.widget.LinearLayoutManager;
 import android.view.MenuItem;
@@ -25,6 +24,7 @@ import java.util.Collection;
 import java.util.List;
 import java.util.logging.Logger;
 
+import javax.annotation.Nullable;
 import javax.inject.Inject;
 
 import static java.util.logging.Level.WARNING;
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/threaded/ThreadItemAdapter.java b/briar-android/src/main/java/org/briarproject/briar/android/threaded/ThreadItemAdapter.java
index 1c10a8b3608939bccbed4fb33687b5e2290ce93e..21d0ede14a0ef78d8dcf269331406ef72fa335bf 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/threaded/ThreadItemAdapter.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/threaded/ThreadItemAdapter.java
@@ -1,7 +1,6 @@
 package org.briarproject.briar.android.threaded;
 
 import android.os.Handler;
-import android.support.annotation.Nullable;
 import android.support.annotation.UiThread;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
@@ -15,6 +14,8 @@ import org.briarproject.briar.android.util.VersionedAdapter;
 
 import java.util.Collection;
 
+import javax.annotation.Nullable;
+
 import static android.support.v7.widget.RecyclerView.NO_POSITION;
 
 @UiThread
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/threaded/ThreadListActivity.java b/briar-android/src/main/java/org/briarproject/briar/android/threaded/ThreadListActivity.java
index fba82cc144d6a71eded33b37966306235f976818..891615e02660e6ec26099ac243f371b1d5e6c989 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/threaded/ThreadListActivity.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/threaded/ThreadListActivity.java
@@ -3,7 +3,6 @@ package org.briarproject.briar.android.threaded;
 import android.content.Intent;
 import android.os.Bundle;
 import android.support.annotation.CallSuper;
-import android.support.annotation.Nullable;
 import android.support.annotation.StringRes;
 import android.support.annotation.UiThread;
 import android.support.design.widget.Snackbar;
@@ -39,6 +38,7 @@ import org.thoughtcrime.securesms.components.KeyboardAwareLinearLayout;
 import java.util.Collection;
 import java.util.logging.Logger;
 
+import javax.annotation.Nullable;
 import javax.inject.Inject;
 
 import static android.support.design.widget.Snackbar.make;
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/util/UiUtils.java b/briar-android/src/main/java/org/briarproject/briar/android/util/UiUtils.java
index 703747495f544ce43c3b071d60d97814dd9ebaab..6dc2920ed0a2cec28cb72411b7ba32dce2bbfb25 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/util/UiUtils.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/util/UiUtils.java
@@ -1,7 +1,6 @@
 package org.briarproject.briar.android.util;
 
 import android.content.Context;
-import android.support.annotation.Nullable;
 import android.support.design.widget.TextInputLayout;
 import android.support.v4.app.FragmentManager;
 import android.support.v4.content.ContextCompat;
@@ -23,6 +22,8 @@ import org.briarproject.briar.R;
 import org.briarproject.briar.android.view.ArticleMovementMethod;
 import org.briarproject.briar.android.widget.LinkDialogFragment;
 
+import javax.annotation.Nullable;
+
 import static android.text.format.DateUtils.DAY_IN_MILLIS;
 import static android.text.format.DateUtils.FORMAT_ABBREV_MONTH;
 import static android.text.format.DateUtils.FORMAT_ABBREV_RELATIVE;
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/view/UnreadMessageButton.java b/briar-android/src/main/java/org/briarproject/briar/android/view/UnreadMessageButton.java
index 4a5360043e21128e68b15c276db786f1d7c01d14..0270cfea34d2353b1fdcb90b7c8d670883ad0471 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/view/UnreadMessageButton.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/view/UnreadMessageButton.java
@@ -2,7 +2,6 @@ package org.briarproject.briar.android.view;
 
 import android.content.Context;
 import android.content.res.TypedArray;
-import android.support.annotation.Nullable;
 import android.support.annotation.UiThread;
 import android.support.design.widget.FloatingActionButton;
 import android.util.AttributeSet;
@@ -13,6 +12,8 @@ import android.widget.TextView;
 import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
 import org.briarproject.briar.R;
 
+import javax.annotation.Nullable;
+
 @UiThread
 @NotNullByDefault
 public class UnreadMessageButton extends FrameLayout {