diff --git a/xwords4/android/XWords4/res/values/strings.xml b/xwords4/android/XWords4/res/values/strings.xml
index 5e9f42db4..3ea36fc73 100644
--- a/xwords4/android/XWords4/res/values/strings.xml
+++ b/xwords4/android/XWords4/res/values/strings.xml
@@ -2118,4 +2118,14 @@
Winner
+
+ You and the host of this
+ game are using different versions of the wordlist %1$s.
+
+ You are using the wordlist
+ %1$s but the game host is using %2$s.
+
+ \u0020(Remember that phonies
+ will be discarded based on the host\'s wordlist.)
+
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java b/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java
index faec012a0..b34345ee9 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java
+++ b/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java
@@ -1485,12 +1485,27 @@ public class BoardActivity extends XWActivity
// should be the normal case. Otherwise: if same name but
// different sum, notify and offer to upgrade. If
// different name, offer to install.
- String oldSum = DictLangCache.getDictMD5Sum( BoardActivity.this,
- oldName );
- String str = String.format( "informNetDict(%s, %s, %s, %s, %s)",
- oldName, oldSum, newName, newSum,
- phonies.toString() );
- nonBlockingDialog( DLG_OKONLY, str );
+ String msg = null;
+ if ( oldName.equals( newName ) ) {
+ String oldSum = DictLangCache.getDictMD5Sum( BoardActivity.this,
+ oldName );
+ if ( !oldSum.equals( newSum ) ) {
+ // Same dict, different versions
+ msg = getString( R.string. inform_dict_diffversionf,
+ oldName );
+ }
+ } else {
+ // Different dict! If we have the other one, switch
+ // to it. Otherwise offer to download
+ msg = getString( R.string.inform_dict_diffdictf,
+ oldName, newName );
+ }
+ if ( null != msg ) {
+ if ( CurGameInfo.XWPhoniesChoice.PHONIES_DISALLOW == phonies ) {
+ msg += getString( R.string.inform_dict_phonies );
+ }
+ nonBlockingDialog( DLG_OKONLY, msg );
+ }
}
@Override