我尝试混淆我的Android应用程序的代码ProGuard.但在此之后我的应用程序在运行时给出异常:
11-15 01:46:26.818: W/System.err(21810): java.lang.RuntimeException: Missing type parameter.
11-15 01:46:26.828: W/System.err(21810): at da.<init>(Unknown Source)
11-15 01:46:26.828: W/System.err(21810): at gc.<init>(Unknown Source)
11-15 01:46:26.828: W/System.err(21810): at fx.f(Unknown Source)
11-15 01:46:26.828: W/System.err(21810): at com.yourshows.activity.UnwatchedActivity.onResume(Unknown Source)
Run Code Online (Sandbox Code Playgroud)
我查了一个mapping文件,发现了这个:
com.google.gson.reflect.TypeToken -> da:
Run Code Online (Sandbox Code Playgroud)
我认为这是我的应用程序中的行:
Type mapType = new TypeToken<Map<Integer, WatchedEpisodes>>(){}.getType(); // define generic type
jsData = gson.fromJson(r, mapType);
Run Code Online (Sandbox Code Playgroud)
我无法理解我应该做什么结论?不要使用变量名少于三个字符或什么?
UPD:回答

我试着在这个应用程序中做圆圈菜单.
在"扩展"模式下,我绘制如下组件:
<RelativeLayout android:id="@+id/bigCircle">
<!--color full borders-->
<my.custom.component android:id="@+id/middleCircle">
<!--circle for buttons-->
<RelativeLayout android:id="@+id/smallCircle">
<!--minus button-->
</RelativeLayout>
</my.custom.component>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
在onDraw方法中,my.custom.component我使用android.graphics.Pathwith android.graphics.Paint和一些数学在8个部分上划分圆圈.
在视觉上我完全如截图所示.但是当我按下圆圈的一部分时,我需要用另一种颜色重新绘制这个部分,以向用户显示正在发生的事情.
例如,我如何重新绘制部分画布从画布的另一部分切掉android.graphics.Path.
换句话说,我知道在onDraw方法中应该做什么重绘画布,我知道我可以在photoshop中绘制一些可绘制的绘图并且有一些"多屏障",我知道如何确定用户按下的部分.但我不知道如何选择画布的一部分并重新绘制它.