|
package ai.pai.ptp.test;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.widget.ImageView;
import android.widget.ListView;
import com.remoteyourcam.usb.ptp.Camera;
import com.remoteyourcam.usb.ptp.PtpConstants;
import com.remoteyourcam.usb.ptp.PtpService;
import com.remoteyourcam.usb.ptp.model.LiveViewData;
import ai.pai.ptp.R;
public class MyTestActivity extends Activity implements Camera.CameraListener {
private ImageView photoIv;
private ListView infoListView;
private MyTestAdapter adapter;
private final String TAG = MyTestActivity.class.getSimpleName();
private PtpService ptp;
private Camera camera;
private boolean isInStart;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my_test);
ptp = PtpService.Singleton.getInstance(this);
photoIv = (ImageView) findViewById(R.id.iv_latest_photo);
infoListView = (ListView) findViewById(R.id.list_info);
adapter = new MyTestAdapter(this, infoListView);
infoListView.setAdapter(adapter);
findViewById(R.id.btn_get_devece_info).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
findViewById(R.id.btn_get_photo).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
}
@Override
protected void onStart() {
super.onStart();
isInStart = true;
ptp.setCameraListener(this);
ptp.initialize(this, getIntent());
}
@Override
protected void onStop() {
super.onStop();
isInStart = false;
ptp.setCameraListener(null);
if (isFinishing()) {
ptp.shutdown();
}
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
this.setIntent(intent);
if (isInStart) {
ptp.initialize(this, intent);
}
}
@Override
public void onCameraStarted(Camera camera) {
this.camera = camera;
adapter.addInfo("开始会话");
}
@Override
public void onCameraStopped(Camera camera) {
this.camera = null;
adapter.addInfo("结束会话");
}
@Override
public void onNoCameraFound() {
adapter.addInfo("没有发现相机设备");
}
@Override
public void onError(String message) {
adapter.addInfo("发生错误 " + message);
}
@Override
public void onPropertyChanged(int property, int value) {
}
@Override
public void onPropertyStateChanged(int property, boolean enabled) {
}
@Override
public void onPropertyDescChanged(int property, int[] values) {
}
@Override
public void onLiveViewStarted() {
}
@Override
public void onLiveViewData(LiveViewData data) {
}
@Override
public void onLiveViewStopped() {
}
@Override
public void onCapturedPictureReceived(int objectHandle, String filename, Bitmap thumbnail, Bitmap bitmap) {
adapter.addInfo("收到新照片 ");
photoIv.setImageBitmap(thumbnail);
}
@Override
public void onBulbStarted() {
}
@Override
public void onBulbExposureTime(int seconds) {
}
@Override
public void onBulbStopped() {
}
@Override
public void onFocusStarted() {
}
@Override
public void onFocusEnded(boolean hasFocused) {
}
@Override
public void onFocusPointsChanged() {
}
@Override
public void onObjectAdded(int handle, int format) {
adapter.addInfo("相机系统发现新文件 ,文件句柄 ="+ handle + " format = "+ format);
if (camera == null) {
return;
}
if (format == PtpConstants.ObjectFormat.EXIF_JPEG) {
camera.retrievePicture(handle);
}
}
@Override
public void onLogMessage(String msg) {
adapter.addInfo(msg);
}
}
|