App 2.19.4: Export CarPlay data to the USB stick

Read-only diagnostic for CarPlay's resolution: window, SurfaceFlinger
and display state captured while CarPlay is in front, display-related
properties without identifiers, Allgo's APK and libraries and
CarPlay-named system files, written to the app's folder on the stick.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LhzAVaUyqcw5PkGjz4mWW6
This commit is contained in:
2026-10-23 21:40:08 +02:00
co-authored by Claude Opus 5.5
parent 51beea5ed8
commit 66b403acb8
10 changed files with 360 additions and 14 deletions
@@ -0,0 +1,43 @@
package com.evsuite.abrp;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
/** What the CarPlay export takes along — pure JVM. */
public class CarPlayExportTest {
@Test
public void displayPropertiesAreKept() {
assertTrue(CarPlayExport.keepProperty("[ro.sf.lcd_density]: [160]"));
assertTrue(CarPlayExport.keepProperty("[persist.allgo.carplay.height]: [640]"));
assertTrue(CarPlayExport.keepProperty("[ro.build.mtk2712.vehicle_type]: [AS28]"));
assertTrue(CarPlayExport.keepProperty("[ro.build.display.id]: [SWI68-29958-1300R69]"));
}
@Test
public void identifiersNeverLeave() {
assertFalse(CarPlayExport.keepProperty("[ro.serialno]: [ABC123]"));
assertFalse(CarPlayExport.keepProperty("[persist.vehicle.vin]: [LSJ...]"));
assertFalse(CarPlayExport.keepProperty("[persist.carplay.wifi.ssid]: [MG4-1234]"));
assertFalse(CarPlayExport.keepProperty("[persist.carplay.bt.addr]: [00:11:22:33:44:55]"));
assertFalse(CarPlayExport.keepProperty("[ro.boot.serialno]: [x]"));
assertFalse(CarPlayExport.keepProperty(null));
}
@Test
public void unrelatedPropertiesStay() {
assertFalse(CarPlayExport.keepProperty("[dalvik.vm.heapsize]: [512m]"));
assertFalse(CarPlayExport.keepProperty("[persist.sys.timezone]: [Europe/Berlin]"));
}
@Test
public void carPlayPathsAreRecognised() {
assertTrue(CarPlayExport.isCarPlayPath("/vendor/etc/allgo/config.xml"));
assertTrue(CarPlayExport.isCarPlayPath("libCarPlayCore.so"));
assertTrue(CarPlayExport.isCarPlayPath("iap2_config.ini"));
assertFalse(CarPlayExport.isCarPlayPath("/system/etc/hosts"));
assertFalse(CarPlayExport.isCarPlayPath(null));
}
}