diff --git a/checkin_notes b/checkin_notes
index 51057a83525c03f74c041236cee257a71a2e2b31..acf9fc429a812b9f30d54108ff1bbc3c93f7be29 100644
--- a/checkin_notes
+++ b/checkin_notes
@@ -5281,3 +5281,11 @@ David  3 Aug 2012
         cs_prefs.cpp
         main.cpp
         hostinfo_network.cpp
+
+David  3 Aug 2012
+    - client: other Android stuff, from Joachim
+
+    client/
+        cs_platforms.cpp
+    lib/
+        md5_file.cpp
diff --git a/client/cs_platforms.cpp b/client/cs_platforms.cpp
index 33b3ca39105f609db4c870663607a5ae12d948ad..085445b3162e691481042e10990a83cea696b5f1 100644
--- a/client/cs_platforms.cpp
+++ b/client/cs_platforms.cpp
@@ -96,8 +96,6 @@ void CLIENT_STATE::detect_platforms() {
     }
     add_platform("windows_intelx86");
 #endif
-#elif defined(ANDROID)
-    add_platform("arm-android");
 
 #elif defined(__APPLE__)
 
diff --git a/lib/md5_file.cpp b/lib/md5_file.cpp
index a7e7438406042e3d3d588c7b579ff44ed4b35f6c..79900a2c979d64828098bfb0af39e18e4fd79d15 100644
--- a/lib/md5_file.cpp
+++ b/lib/md5_file.cpp
@@ -34,6 +34,10 @@
 #include <wincrypt.h>
 #endif
 
+#ifdef ANDROID
+#include <stdlib.h>
+#endif
+
 #include "error_numbers.h"
 #include "md5.h"
 
@@ -96,6 +100,9 @@ std::string md5_string(const unsigned char* data, int nbytes) {
     return std::string(output);
 }
 
+// make a random 32-char string
+// (the MD5 of some quasi-random bits)
+//
 int make_random_string(char* out) {
     char buf[256];
 #ifdef _WIN32
@@ -111,6 +118,10 @@ int make_random_string(char* out) {
     }
         
     CryptReleaseContext(hCryptProv, 0);
+#elif defined ANDROID
+    // /dev/random not available on Android, using stdlib function instead
+    int i = rand();
+    snprintf(buf, sizeof(buf), "%d", i);
 #else
 #ifndef _USING_FCGI_
     FILE* f = fopen("/dev/random", "r");