blob: 6d857b103bc71d055b6dd412f6db1a4ae3ac88d5 [file] [log] [blame]
Maciej Żenczykowski31421982025-01-02 08:27:30 -08001# Keep JNI registered methods
2-keepclasseswithmembers,includedescriptorclasses class * { native <methods>; }
3
markchien9d353822019-12-16 20:15:20 +08004# Keep class's integer static field for MessageUtils to parsing their name.
Chalard Jean88edc352022-09-29 18:01:49 +09005-keepclassmembers class com.android.server.**,android.net.**,com.android.networkstack.** {
6 static final % POLICY_*;
7 static final % NOTIFY_TYPE_*;
8 static final % TRANSPORT_*;
9 static final % CMD_*;
10 static final % EVENT_*;
markchien9d353822019-12-16 20:15:20 +080011}
12
Jared Duke4ed99422022-04-19 21:45:04 +000013# Ensure runtime-visible field annotations are kept when using R8 full mode.
14-keepattributes RuntimeVisibleAnnotations,AnnotationDefault
15-keep interface com.android.networkstack.tethering.util.Struct$Field {
16 *;
17}
markchien70526882020-11-12 00:17:15 +080018-keepclassmembers public class * extends com.android.networkstack.tethering.util.Struct {
Remi NGUYEN VAN9a82bbf2021-04-14 01:30:55 +000019 *;
markchien70526882020-11-12 00:17:15 +080020}
21
Wayne Ma71d66392022-03-03 10:15:09 +080022# The lite proto runtime uses reflection to access fields based on the names in
23# the schema, keep all the fields.
24-keepclassmembers class * extends com.android.networkstack.tethering.protobuf.MessageLite {
25 <fields>;
Chalard Jean88edc352022-09-29 18:01:49 +090026}