Merge "Refine fingerprint animation handling" into nyc-mr1-dev
This commit is contained in:
@@ -56,11 +56,20 @@ public class FingerprintLocationAnimationVideoView extends TextureView
|
|||||||
protected void onFinishInflate() {
|
protected void onFinishInflate() {
|
||||||
super.onFinishInflate();
|
super.onFinishInflate();
|
||||||
setSurfaceTextureListener(new SurfaceTextureListener() {
|
setSurfaceTextureListener(new SurfaceTextureListener() {
|
||||||
|
private SurfaceTexture mTextureToDestroy = null;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onSurfaceTextureAvailable(SurfaceTexture surfaceTexture, int width,
|
public void onSurfaceTextureAvailable(SurfaceTexture surfaceTexture, int width,
|
||||||
int height) {
|
int height) {
|
||||||
setVisibility(View.INVISIBLE);
|
setVisibility(View.INVISIBLE);
|
||||||
Uri videoUri = resourceEntryToUri(mContext, R.raw.fingerprint_location_animation);
|
Uri videoUri = resourceEntryToUri(mContext, R.raw.fingerprint_location_animation);
|
||||||
|
if (mMediaPlayer != null) {
|
||||||
|
mMediaPlayer.release();
|
||||||
|
}
|
||||||
|
if (mTextureToDestroy != null) {
|
||||||
|
mTextureToDestroy.release();
|
||||||
|
mTextureToDestroy = null;
|
||||||
|
}
|
||||||
mMediaPlayer = MediaPlayer.create(mContext, videoUri);
|
mMediaPlayer = MediaPlayer.create(mContext, videoUri);
|
||||||
mMediaPlayer.setSurface(new Surface(surfaceTexture));
|
mMediaPlayer.setSurface(new Surface(surfaceTexture));
|
||||||
mMediaPlayer.setOnPreparedListener(new OnPreparedListener() {
|
mMediaPlayer.setOnPreparedListener(new OnPreparedListener() {
|
||||||
@@ -91,6 +100,7 @@ public class FingerprintLocationAnimationVideoView extends TextureView
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onSurfaceTextureDestroyed(SurfaceTexture surfaceTexture) {
|
public boolean onSurfaceTextureDestroyed(SurfaceTexture surfaceTexture) {
|
||||||
|
mTextureToDestroy = surfaceTexture;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user