gpt4 book ai didi

android - NineOldAndroids ObjectAnimators 不适用于 ProGuard 和签名的 apk

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:02:38 26 4
gpt4 key购买 nike

我正在使用 NineOldAndroids 的 ObjectAnimators 通过以下代码淡入 Android Map v2 标记:

mMarkerSelected = mMap.addMarker(new MarkerOptions()
.position(location.getLatLng())
.title(location.getName())
.snippet(location.getId())
.icon(BitmapDescriptorFactory.defaultMarker(location.getMarkerHue())));
mMarkerSelected.setAlpha(0.0f);
ObjectAnimator.ofFloat(mMarkerSelected, "alpha", 0.0f, 1.f)
.setDuration(300).start();

这与 apk 的可调试版本完美配合。

但是,当我签署我的 apk 并使用 ProGuard 时,标记突然没有淡入。我的猜测是 alpha 属性已被混淆,以便将 “alpha” 传递到 ObjectAnimator .ofFloatMarker 的混淆 alpha 属性不匹配。使用 ProGuard 时如何让动画正常工作?

只是为了完整性,这是我的 proguard-rules.txt 的唯一内容

-dontwarn com.squareup.okhttp.**

最佳答案

它使用反射,所以你需要完整的方法名称​​即setAlpha(),在你的 proguard 配置中是这样的:

 # This is due to ObjectAnimator using reflection to access get/sets
-keep class com.your.package.ClassThatUsesObjectAnimator { *; }

关于android - NineOldAndroids ObjectAnimators 不适用于 ProGuard 和签名的 apk,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22120546/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com