package fm.jiecao.jiecaovideoplayer; import android.content.Intent; import android.hardware.Sensor; import android.hardware.SensorManager; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.view.View; import android.widget.Button; import com.squareup.picasso.Picasso; import fm.jiecao.jcvideoplayer_lib.JCUserAction; import fm.jiecao.jcvideoplayer_lib.JCUserActionStandard; import fm.jiecao.jcvideoplayer_lib.JCVideoPlayer; import fm.jiecao.jcvideoplayer_lib.JCVideoPlayerSimple; import fm.jiecao.jcvideoplayer_lib.JCVideoPlayerStandard; /** * Created by Nathen on 16/7/22. */ public class MainActivity extends AppCompatActivity implements View.OnClickListener { JCVideoPlayer.JCAutoFullscreenListener mSensorEventListener; SensorManager mSensorManager; JCVideoPlayerStandard mJcVideoPlayerStandard; JCVideoPlayerSimple mJcVideoPlayerSimple; Button mTinyWindow, mAutoTinyWindow, mAboutListView, mAboutUI, mPlayDirectly, mAboutWebView; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mTinyWindow = (Button) findViewById(R.id.tiny_window); mAutoTinyWindow = (Button) findViewById(R.id.auto_tiny_window); mAboutUI = (Button) findViewById(R.id.play_directly_without_layout); mAboutListView = (Button) findViewById(R.id.about_listview); mPlayDirectly = (Button) findViewById(R.id.about_ui); mAboutWebView = (Button) findViewById(R.id.about_webview); mTinyWindow.setOnClickListener(this); mAutoTinyWindow.setOnClickListener(this); mAboutListView.setOnClickListener(this); mAboutUI.setOnClickListener(this); mPlayDirectly.setOnClickListener(this); mAboutWebView.setOnClickListener(this); mJcVideoPlayerSimple = (JCVideoPlayerSimple) findViewById(R.id.simple_demo); mJcVideoPlayerSimple.setUp("http://devimages.apple.com/iphone/samples/bipbop/gear1/prog_index.m3u8" , JCVideoPlayerStandard.SCREEN_LAYOUT_NORMAL, "嫂子在家吗"); mJcVideoPlayerStandard = (JCVideoPlayerStandard) findViewById(R.id.jc_video); mJcVideoPlayerStandard.setUp("http://video.jiecao.fm/8/17/%E6%8A%AB%E8%90%A8.mp4" , JCVideoPlayerStandard.SCREEN_LAYOUT_NORMAL, "嫂子真嘚瑟"); Picasso.with(this) .load("http://img4.jiecaojingxuan.com/2016/8/17/f2dbd12e-b1cb-4daf-aff1-8c6be2f64d1a.jpg") .into(mJcVideoPlayerStandard.thumbImageView); mJcVideoPlayerStandard.looping = true; JCVideoPlayer.setJcUserAction(new MyUserActionStandard()); mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE); mSensorEventListener = new JCVideoPlayer.JCAutoFullscreenListener(); } @Override protected void onResume() { super.onResume(); Sensor accelerometerSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER); mSensorManager.registerListener(mSensorEventListener, accelerometerSensor, SensorManager.SENSOR_DELAY_NORMAL); } @Override protected void onPause() { super.onPause(); mSensorManager.unregisterListener(mSensorEventListener); JCVideoPlayer.releaseAllVideos(); } @Override public void onBackPressed() { if (JCVideoPlayer.backPress()) { return; } super.onBackPressed(); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.tiny_window: mJcVideoPlayerStandard.startWindowTiny(); break; case R.id.auto_tiny_window: startActivity(new Intent(MainActivity.this, AutoTinyActivity.class)); break; case R.id.play_directly_without_layout: startActivity(new Intent(MainActivity.this, PlayDirectlyActivity.class)); break; case R.id.about_listview: startActivity(new Intent(MainActivity.this, ListViewActivity.class)); break; case R.id.about_ui: startActivity(new Intent(MainActivity.this, UIActivity.class)); break; case R.id.about_webview: startActivity(new Intent(MainActivity.this, WebViewActivity.class)); break; } } class MyUserActionStandard implements JCUserActionStandard { @Override public void onEvent(int type, String url, int screen, Object... objects) { switch (type) { case JCUserAction.ON_CLICK_START_ICON: Log.i("USER_EVENT", "ON_CLICK_START_ICON" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; case JCUserAction.ON_CLICK_START_ERROR: Log.i("USER_EVENT", "ON_CLICK_START_ERROR" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; case JCUserAction.ON_CLICK_START_AUTO_COMPLETE: Log.i("USER_EVENT", "ON_CLICK_START_AUTO_COMPLETE" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; case JCUserAction.ON_CLICK_PAUSE: Log.i("USER_EVENT", "ON_CLICK_PAUSE" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; case JCUserAction.ON_CLICK_RESUME: Log.i("USER_EVENT", "ON_CLICK_RESUME" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; case JCUserAction.ON_SEEK_POSITION: Log.i("USER_EVENT", "ON_SEEK_POSITION" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; case JCUserAction.ON_AUTO_COMPLETE: Log.i("USER_EVENT", "ON_AUTO_COMPLETE" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; case JCUserAction.ON_ENTER_FULLSCREEN: Log.i("USER_EVENT", "ON_ENTER_FULLSCREEN" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; case JCUserAction.ON_QUIT_FULLSCREEN: Log.i("USER_EVENT", "ON_QUIT_FULLSCREEN" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; case JCUserAction.ON_ENTER_TINYSCREEN: Log.i("USER_EVENT", "ON_ENTER_TINYSCREEN" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; case JCUserAction.ON_QUIT_TINYSCREEN: Log.i("USER_EVENT", "ON_QUIT_TINYSCREEN" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; case JCUserAction.ON_TOUCH_SCREEN_SEEK_VOLUME: Log.i("USER_EVENT", "ON_TOUCH_SCREEN_SEEK_VOLUME" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; case JCUserAction.ON_TOUCH_SCREEN_SEEK_POSITION: Log.i("USER_EVENT", "ON_TOUCH_SCREEN_SEEK_POSITION" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; case JCUserActionStandard.ON_CLICK_START_THUMB: Log.i("USER_EVENT", "ON_CLICK_START_THUMB" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; case JCUserActionStandard.ON_CLICK_BLANK: Log.i("USER_EVENT", "ON_CLICK_BLANK" + " title is : " + (objects.length == 0 ? "" : objects[0]) + " url is : " + url + " screen is : " + screen); break; default: Log.i("USER_EVENT", "unknow"); break; } } } }