支持缩放变焦
This commit is contained in:
@@ -22,6 +22,7 @@ import android.os.AsyncTask;
|
||||
import android.preference.PreferenceManager;
|
||||
import android.util.Log;
|
||||
|
||||
import java.lang.ref.WeakReference;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.concurrent.RejectedExecutionException;
|
||||
@@ -66,7 +67,7 @@ final class AutoFocusManager implements Camera.AutoFocusCallback {
|
||||
|
||||
private synchronized void autoFocusAgainLater() {
|
||||
if (!stopped && outstandingTask == null) {
|
||||
AutoFocusTask newTask = new AutoFocusTask();
|
||||
AutoFocusTask newTask = new AutoFocusTask(this);
|
||||
try {
|
||||
newTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
|
||||
outstandingTask = newTask;
|
||||
@@ -116,7 +117,14 @@ final class AutoFocusManager implements Camera.AutoFocusCallback {
|
||||
}
|
||||
}
|
||||
|
||||
private final class AutoFocusTask extends AsyncTask<Object,Object,Object> {
|
||||
private static class AutoFocusTask extends AsyncTask<Object,Object,Object> {
|
||||
|
||||
private WeakReference<AutoFocusManager> weakReference;
|
||||
|
||||
public AutoFocusTask(AutoFocusManager manager){
|
||||
weakReference = new WeakReference<>(manager);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Object doInBackground(Object... voids) {
|
||||
try {
|
||||
@@ -124,7 +132,10 @@ final class AutoFocusManager implements Camera.AutoFocusCallback {
|
||||
} catch (InterruptedException e) {
|
||||
// continue
|
||||
}
|
||||
start();
|
||||
AutoFocusManager manager = weakReference.get();
|
||||
if(manager!=null){
|
||||
manager.start();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user