apkdmverity: enable AndroidTest

The Android test for apkdmverity is now enabled and the binary is
slightly modified to use Android-specific paths (e.g. /dev/block/loopX
instead of /dev/loopX).

Bug: 189785765
Test: cargo test
Test: adb root; adb shell setenforce 0; atest apkdmverity.test
Change-Id: Iaeebbefd961db289af3d2ba7492c1c3110f72c0c
diff --git a/apkverity/src/loopdevice.rs b/apkverity/src/loopdevice.rs
index 519e3bd..68516d7 100644
--- a/apkverity/src/loopdevice.rs
+++ b/apkverity/src/loopdevice.rs
@@ -85,6 +85,12 @@
     }
 }
 
+#[cfg(not(target_os = "android"))]
+const LOOP_DEV_PREFIX: &str = "/dev/loop";
+
+#[cfg(target_os = "android")]
+const LOOP_DEV_PREFIX: &str = "/dev/block/loop";
+
 fn try_attach<P: AsRef<Path>>(path: P, offset: u64, size_limit: u64) -> Result<PathBuf> {
     // Get a free loop device
     wait_for_path(LOOP_CONTROL)?;
@@ -112,12 +118,12 @@
     // happens only during test. DirectIO-on-loop-over-loop makes the outer loop device
     // unaccessible.
     #[cfg(test)]
-    if path.as_ref().to_str().unwrap().starts_with("/dev/loop") {
+    if path.as_ref().to_str().unwrap().starts_with(LOOP_DEV_PREFIX) {
         config.info.lo_flags.remove(Flag::LO_FLAGS_DIRECT_IO);
     }
 
     // Configure the loop device to attach the backing file
-    let device_path = format!("/dev/loop{}", num);
+    let device_path = format!("{}{}", LOOP_DEV_PREFIX, num);
     wait_for_path(&device_path)?;
     let device_file = OpenOptions::new()
         .read(true)