+ Added missing androix libraries to LOCAL_STATIC_ANDROID_LIBRARIES.
+ Added keep class statements for androidx and messaging classes.
+ Deleted Assert.isEngBuild call (this package is the last user of that method).
+ Added import statements for androidx classes.
Test: manual - Tested the messaging UI. Ran the following tests on Pixel phone.
$ make -j 40
$ make messagingtests -j
$ find out -name "messaging*.apk" -print -exec ls -l {} \;
-rw-r----- 1 rtenneti primarygroup 733809 Jul 9 17:42 out/target/product/bonito/testcases/messagingtests/arm64/messagingtests.apk
-rw-r----- 1 rtenneti primarygroup 10799132 Jul 9 18:34 out/target/product/bonito/product/app/messaging/messaging.apk
$ adb install -r -d -t out/target/product/bonito/product/app/messaging/messaging.apk
$ adb install -r -d -t out/target/product/bonito/testcases/messagingtests/arm64/messagingtests.apk
$ adb shell am instrument -w com.android.messaging.test
com.android.messaging.datamodel.BindingTest:.......
com.android.messaging.datamodel.BitmapPoolTest:....
com.android.messaging.datamodel.ConversationListTest:.
com.android.messaging.datamodel.DataModelTest:...
com.android.messaging.datamodel.FrequentContactsCursorBuilderTest:...
com.android.messaging.datamodel.MemoryCacheManagerTest:.
com.android.messaging.datamodel.ParticipantRefreshTest:..........
com.android.messaging.datamodel.action.ActionServiceSystemTest:.....
com.android.messaging.datamodel.action.ActionServiceTest:..
com.android.messaging.datamodel.action.ActionTest:.....
com.android.messaging.datamodel.action.GetOrCreateConversationActionTest:.
com.android.messaging.datamodel.action.ReadWriteDraftMessageActionTest:......
com.android.messaging.datamodel.data.ConversationMessageDataTest:...
com.android.messaging.datamodel.data.ConversationParticipantsDataTest:.
com.android.messaging.datamodel.media.ImageRequestTest:..
com.android.messaging.datamodel.media.MediaResourceManagerTest:.....
com.android.messaging.ui.CustomHeaderViewPagerTest:.
com.android.messaging.ui.MultiAttachmentLayoutTest:...
com.android.messaging.ui.attachmentchooser.AttachmentChooserFragmentTest:.
com.android.messaging.ui.contact.ContactListItemViewTest:....
com.android.messaging.ui.contact.ContactPickerFragmentTest:......
com.android.messaging.ui.conversation.ComposeMessageViewTest:..
com.android.messaging.ui.conversation.ConversationActivityUiStateTest:....
com.android.messaging.ui.conversation.ConversationFragmentTest:..
com.android.messaging.ui.conversation.ConversationInputManagerTest:.....
com.android.messaging.ui.conversation.ConversationMessageViewTest:...
com.android.messaging.ui.conversationlist.ConversationListFragmentTest:...
com.android.messaging.ui.conversationlist.ConversationListItemViewTest:....
com.android.messaging.ui.mediapicker.AudioRecordViewTest:.
com.android.messaging.ui.mediapicker.CameraManagerTest:......
com.android.messaging.ui.mediapicker.GalleryGridItemViewTest:.....
com.android.messaging.ui.mediapicker.MediaPickerTest:..
com.android.messaging.util.BugleGservicesTest:.
com.android.messaging.util.YouTubeUtilTest:.
Test results for InstrumentationTestRunner=.........................................
.........................................
...............................
Time: 9.903
OK (113 tests)
Change-Id: If8fd8036791027739eb9bbb1d3849a46211a5137
65 lines
2.6 KiB
Plaintext
65 lines
2.6 KiB
Plaintext
# Copyright (C) 2015 The Android Open Source Project
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
# Keep enough data for stack traces
|
|
-renamesourcefileattribute SourceFile
|
|
-keepattributes SourceFile,LineNumberTable,*Annotation*
|
|
|
|
# Keep classes and methods that have the guava @VisibleForTesting annotation
|
|
-keep @com.google.common.annotations.VisibleForTesting class *
|
|
-keepclassmembers class * {
|
|
@com.google.common.annotations.VisibleForTesting *;
|
|
}
|
|
-keep class com.android.messaging.* { *; }
|
|
-keep class com.android.messaging.*.* { *; }
|
|
-keep class com.android.messaging.*.*.* { *; }
|
|
|
|
# Keep methods that have the @VisibleForAnimation annotation
|
|
-keep @interface com.android.messaging.annotation.VisibleForAnimation
|
|
-keepclassmembers class * {
|
|
@com.android.messaging.annotation.VisibleForAnimation *;
|
|
}
|
|
|
|
-keep public class * extends android.app.Activity
|
|
-keep public class * extends android.app.Application
|
|
-keep public class * extends android.app.Service
|
|
-keep public class * extends android.content.BroadcastReceiver
|
|
-keep public class * extends android.content.ContentProvider
|
|
-keep public class * extends android.app.backup.BackupAgentHelper
|
|
-keep public class * extends android.preference.Preference
|
|
-keep public class * extends androidx.fragment.app.Fragment
|
|
-keep public class com.android.vcard.* { *; }
|
|
|
|
-keep class androidx.collection.* { *; }
|
|
-keep class androidx.core.* { *; }
|
|
-keep class androidx.core.*.* { *; }
|
|
-keep class androidx.appcompat.* { *; }
|
|
-keep class androidx.appcompat.*.* { *; }
|
|
-keep class androidx.recyclerview.widget.* { *; }
|
|
-keep class androidx.viewpager.widget.* { *; }
|
|
|
|
# Keep rastermill classes that need to be accessed from native code (JNI)
|
|
-keep class android.support.rastermill.** { *; }
|
|
|
|
# Preserve the name of the getCaller method so it can find itself in the stack trace it generates
|
|
-keepclassmembers public class com.android.messaging.util.DebugUtils {
|
|
public static java.lang.StackTraceElement getCaller(...);
|
|
}
|
|
|
|
# Keep the static fields of referenced inner classes of auto-generated R classes, in case we
|
|
# access those fields by reflection (e.g. EmojiMarkup)
|
|
-keepclassmembers class **.R$* {
|
|
public static <fields>;
|
|
}
|