Everything written this session that has not been through the device: rounds 43 to 48 (each patch adversarially verified, 43's transient-notice expectation fixed), a partial round 49, the pipeline scripts, the Android Auto design and the icon comparison mock. Also the two harness changes that were never A/B'd — adaptive waits, which may only shorten a declared wait and never lengthen it, and a ship that runs the mock walk and the deploy at the same time. The A/B and its 255-step baseline are in handoff/tools; main stays at what the phone has actually walked.
18 lines
962 B
Plaintext
18 lines
962 B
Plaintext
# Consumer R8/ProGuard rules for the share plugin. Inert unless the consuming
|
|
# app minifies, and only the `release` build type does, so the debug APK the
|
|
# deploy pipeline builds is untouched by this file.
|
|
#
|
|
# SharePlugin is found by the string "com/soulstream/share/SharePlugin"
|
|
# (register_android_plugin → FindClass), constructed through
|
|
# "(Landroid/app/Activity;)V", and its one @Command method — pendingShare —
|
|
# is dispatched by NAME through PluginHandle's commands map. It takes no
|
|
# arguments, so there is no @InvokeArg class here. Rename it and text shared
|
|
# to SoulStream from another app arrives nowhere: the activity still runs and
|
|
# still brings the app to the front, and the WebView is never handed what it
|
|
# carried.
|
|
#
|
|
# ShareActivity is declared in this module's AndroidManifest.xml, so AGP's
|
|
# own merged-manifest keep rules hold it by name. Not repeated here: one
|
|
# place decides it.
|
|
-keep class com.soulstream.share.SharePlugin { *; }
|