Java 类android.media.projection.MediaProjectionManager 实例源码

项目:SmingZZick_App    文件:MainActivity.java   
@Override
@TargetApi(21)
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == REQUEST_CODE && resultCode == Activity.RESULT_OK) {
        String uri = data.toUri(0);
        MediaProjectionManager projectionManager = (MediaProjectionManager) getSystemService(Activity.MEDIA_PROJECTION_SERVICE);
        MediaProjection mediaProjection = projectionManager.getMediaProjection(resultCode, data);

        ScreenCaptureService.setMediaProjection(mediaProjection);

        startService(new Intent(ScreenCaptureService.ACTION_START, null, this, ScreenCaptureService.class));
        fab.setSelected(true);
    }

    if (requestCode == REQUEST_CODE_MAKE_SMING && resultCode == RESULT_OK) {
        loadSmings();
        checkEmpty();
    }
}
项目:Bigbang    文件:ScreenCapture.java   
@RequiresApi(api = Build.VERSION_CODES.KITKAT)
private void createVirtualEnvironment() {
    dateFormat = new SimpleDateFormat("yyyy_MM_dd_hh_mm_ss");
    strDate = dateFormat.format(new java.util.Date());
    pathImage = Environment.getExternalStorageDirectory().getPath() + "/Pictures/";
    nameImage = pathImage + strDate + ".png";
    mMediaProjectionManager1 = (MediaProjectionManager) activity.getApplication().getSystemService(Context.MEDIA_PROJECTION_SERVICE);
    mWindowManager1 = (WindowManager) activity.getApplication().getSystemService(Context.WINDOW_SERVICE);
    windowWidth = ViewUtil.getScreenWidth(activity);
    windowHeight = ViewUtil.getSceenHeight(activity);
    metrics = new DisplayMetrics();
    mWindowManager1.getDefaultDisplay().getMetrics(metrics);
    mScreenDensity = metrics.densityDpi;
    mImageReader = ImageReader.newInstance(windowWidth, windowHeight, 0x1, 2); //ImageFormat.RGB_565

    LogUtil.d(TAG, "prepared the virtual environment");
}
项目:Agora-Screen-Sharing-Android    文件:ScreenBroadcastReceiver.java   
@Override
public void onReceive(Context context, Intent intent) {
    if (intent.getAction().equalsIgnoreCase(ScreenCapture.ASSISTANT_ACTIVITY_CREATED_INTENT)) {
        ScreenCapture screenCapture = mSender;
        if (ScreenCapture.mScreenCaptureActivity != null) {
            ScreenCapture.ScreenCaptureAssistantActivity screenActivity =
                    ScreenCapture.mScreenCaptureActivity;
            ScreenCapture.mScreenCaptureActivity.mScreenCapture = screenCapture;

            if (screenActivity.mScreenCapture.mMediaProjectManager == null) {
                screenActivity.mScreenCapture.mMediaProjectManager =
                        (MediaProjectionManager) screenActivity.getSystemService(Context.MEDIA_PROJECTION_SERVICE);
            }

            screenActivity.startActivityForResult(
                    screenActivity.mScreenCapture.mMediaProjectManager.createScreenCaptureIntent(),
                    ScreenCapture.MEDIA_PROJECTION_REQUEST_CODE);
        }
    }

}
项目:AppRTC-Android    文件:ScreenCapturerAndroid.java   
@Override
public synchronized void initialize(final SurfaceTextureHelper surfaceTextureHelper,
    final Context applicationContext, final VideoCapturer.CapturerObserver capturerObserver) {
  checkNotDisposed();

  if (capturerObserver == null) {
    throw new RuntimeException("capturerObserver not set.");
  }
  this.capturerObserver = capturerObserver;

  if (surfaceTextureHelper == null) {
    throw new RuntimeException("surfaceTextureHelper not set.");
  }
  this.surfaceTextureHelper = surfaceTextureHelper;

  mediaProjectionManager = (MediaProjectionManager) applicationContext.getSystemService(
      Context.MEDIA_PROJECTION_SERVICE);
}
项目:AndroidRTC    文件:ScreenCapturerAndroid.java   
@Override
public synchronized void initialize(final SurfaceTextureHelper surfaceTextureHelper,
    final Context applicationContext, final VideoCapturer.CapturerObserver capturerObserver) {
  checkNotDisposed();

  if (capturerObserver == null) {
    throw new RuntimeException("capturerObserver not set.");
  }
  this.capturerObserver = capturerObserver;

  if (surfaceTextureHelper == null) {
    throw new RuntimeException("surfaceTextureHelper not set.");
  }
  this.surfaceTextureHelper = surfaceTextureHelper;

  mediaProjectionManager = (MediaProjectionManager) applicationContext.getSystemService(
      Context.MEDIA_PROJECTION_SERVICE);
}
项目:VideoCRE    文件:ScreenCapturerAndroid.java   
@Override
public synchronized void initialize(final SurfaceTextureHelper surfaceTextureHelper,
    final Context applicationContext, final VideoCapturer.CapturerObserver capturerObserver) {
  checkNotDisposed();

  if (capturerObserver == null) {
    throw new RuntimeException("capturerObserver not set.");
  }
  this.capturerObserver = capturerObserver;

  if (surfaceTextureHelper == null) {
    throw new RuntimeException("surfaceTextureHelper not set.");
  }
  this.surfaceTextureHelper = surfaceTextureHelper;

  mediaProjectionManager = (MediaProjectionManager) applicationContext.getSystemService(
      Context.MEDIA_PROJECTION_SERVICE);
}
项目:accelerator-core-android    文件:ScreenSharingFragment.java   
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
@Override
public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);

    Activity activity = getActivity();
    DisplayMetrics metrics = new DisplayMetrics();
    activity.getWindowManager().getDefaultDisplay().getMetrics(metrics);
    mDensity = metrics.densityDpi;
    mMediaProjectionManager = (MediaProjectionManager)
            activity.getSystemService(Context.MEDIA_PROJECTION_SERVICE);

    //run permissions
    startActivityForResult(
            mMediaProjectionManager.createScreenCaptureIntent(),
            REQUEST_MEDIA_PROJECTION);
}
项目:FloatingNew    文件:ScreenShortActivity.java   
/****************************************** Activity Lifecycle methods ************************/
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    // setContentView(R.layout.activity_screen_short);

    // call for the projection manager
    mProjectionManager = (MediaProjectionManager) getSystemService(Context.MEDIA_PROJECTION_SERVICE);

    startProjection();
    // start capture handling thread
    new Thread() {
        @Override
        public void run() {
            Looper.prepare();
            mHandler = new Handler();
            Looper.loop();
        }
    }.start();
}
项目:FloatingNew    文件:RecordingScreen.java   
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_blank);
    DisplayMetrics metrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(metrics);
    mScreenDensity = metrics.densityDpi;

    mMediaRecorder = new MediaRecorder();
    initRecorder();
    prepareRecorder();

    mProjectionManager = (MediaProjectionManager) getSystemService
            (Context.MEDIA_PROJECTION_SERVICE);

    mToggleButton = (ToggleButton) findViewById(R.id.toggle);
    mToggleButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            onToggleScreenShare(v);
        }
    });

    mMediaProjectionCallback = new MediaProjectionCallback();
}
项目:SCR-Screen-Recorder-app    文件:MediaProjectionActivity.java   
public void requestMediaProjection() {
    boolean permanent = Utils.isMediaProjectionPermanent(this);
    boolean affectedVersion = Build.VERSION.RELEASE.equals("5.1") || Build.VERSION.RELEASE.equals("5.1.0");
    if (affectedVersion && permanent && !getSharedPreferences(PREFERENCES_NAME, 0).getBoolean(SYSTEM_UI_CRASH_MESSAGE, false)) {
        getSharedPreferences(PREFERENCES_NAME, 0).edit().putBoolean(SYSTEM_UI_CRASH_MESSAGE, true).apply();
        new SystemUICrashDialogFragment().show(getFragmentManager(), SystemUICrashDialogFragment.FRAGMENT_TAG);
    } else {
        if (affectedVersion && !permanent) {
            Toast.makeText(this, getString(R.string.system_ui_crash_warning_toast, getString(R.string.media_projection_remember_text)), Toast.LENGTH_SHORT).show();
        }
        MediaProjectionManager mediaProjectionManager =
                (MediaProjectionManager) getSystemService(Context.MEDIA_PROJECTION_SERVICE);
        startActivityForResult(mediaProjectionManager.createScreenCaptureIntent(),
                PERMISSION_CODE);
    }
}
项目:castscreen    文件:CastScreenMediaRouteButton.java   
@Override
public boolean showDialog() {
    try {
        Activity currentActivity = getActivity();
        final FragmentManager fm = ((FragmentActivity) currentActivity).getSupportFragmentManager();
        if (!isAttachedToWindow()
                || (fm.findFragmentByTag(CONTROLLER_TAG) != null)
                || (fm.findFragmentByTag(CHOOSER_TAG) != null) ) {
            return false;
        }

        MediaRouter.RouteInfo route = getMediaRouter().getSelectedRoute();
        if (route.isDefault() || !route.matchesSelector(mSelector)) { // route chooser
            Intent intent = ((MediaProjectionManager)
                    currentActivity.getSystemService(Context.MEDIA_PROJECTION_SERVICE)).createScreenCaptureIntent();
            currentActivity.startActivityForResult(intent, CastScreenActivity.SCREEN_CAPTURE_REQUEST);

            return true;
        } else { // route controller
            return super.showDialog();
        }
    } catch (NoSuchFieldException | IllegalAccessException | NoSuchMethodException | InvocationTargetException e) {
        Log.e(TAG, "MediaRouteButton implementation changed - " + CastScreenActivity.PLEASE_REPORT_BUG);
    }
    return false;
}
项目:castscreen    文件:ProjectionManager.java   
public ProjectionManager(Context context, DisplayMetrics metrics,
                         int permissionsResultCode, Intent permissionsData, final MediaRouter router) {
    mDensity = metrics.densityDpi;
    mProjection = ((MediaProjectionManager) context.getSystemService(Context.MEDIA_PROJECTION_SERVICE))
            .getMediaProjection(permissionsResultCode, permissionsData);
    if (mProjection == null) {
        throw new IllegalStateException("Null media projection manager - " + CastScreenActivity.PLEASE_REPORT_BUG);
    }
    // When the MediaProjection is stopped, deselect the active route to ensure casting stops
    mProjection.registerCallback(new MediaProjection.Callback() {
        @Override
        public void onStop() {
            router.selectRoute(router.getDefaultRoute());
        }
    }, null);
}
项目:GoIV    文件:MainActivity.java   
@TargetApi(Build.VERSION_CODES.M)
@Override
/**
 * Called when another activity has sent a result to this activity. For example when this activity starts the
 * activity which calls for the projectionmanager, which tells this class if the screen capture has been enabled.
 */
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == OVERLAY_PERMISSION_REQ_CODE) {
        updateLaunchButtonText(false);

    } else if (requestCode == SCREEN_CAPTURE_REQ_CODE) {
        if (resultCode == RESULT_OK) {
            MediaProjectionManager projectionManager = (MediaProjectionManager) getSystemService(
                    Context.MEDIA_PROJECTION_SERVICE);
            MediaProjection mProjection = projectionManager.getMediaProjection(resultCode, data);
            screen = ScreenGrabber.init(mProjection, rawDisplayMetrics);

            startPokeFly();
        } else {
            updateLaunchButtonText(false);
        }
    }
}
项目:Kaku    文件:MainService.java   
@Override
public int onStartCommand(Intent intent, int flags, int startId){

    Log.d(TAG, "onStartCommand");

    mHandler = new MainServiceHandler(this);
    mIntent = (Intent) intent.getExtras().get(EXTRA_RESULT_INTENT);
    mResultCode = intent.getExtras().getInt(EXTRA_RESULT_CODE);
    mMediaProjectionManager = (MediaProjectionManager) getSystemService(MEDIA_PROJECTION_SERVICE);

    if (mCaptureWindow == null){
        mCaptureWindow = new CaptureWindow(this);
    }
    else {
        mCaptureWindow.reInit();
    }

    return START_NOT_STICKY;
}
项目:365browser    文件:ScreenCapture.java   
@CalledByNative
public boolean allocate(int width, int height) {
    mWidth = width;
    mHeight = height;

    mMediaProjectionManager =
            (MediaProjectionManager) ContextUtils.getApplicationContext().getSystemService(
                    Context.MEDIA_PROJECTION_SERVICE);
    if (mMediaProjectionManager == null) {
        Log.e(TAG, "mMediaProjectionManager is null");
        return false;
    }

    WindowManager windowManager =
            (WindowManager) ContextUtils.getApplicationContext().getSystemService(
                    Context.WINDOW_SERVICE);
    mDisplay = windowManager.getDefaultDisplay();

    DisplayMetrics metrics = new DisplayMetrics();
    mDisplay.getMetrics(metrics);
    mScreenDensity = metrics.densityDpi;

    return true;
}
项目:tabulae    文件:ScreenCaptureFragment.java   
@Override
public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    if (DEBUG) Log.d(TAG, "ScreenCaptureFragment.onActivityCreated enabled=" + enabled + ", mVirtualDisplay=" + mVirtualDisplay);
    Activity activity = getActivity();
    DisplayMetrics mDisplayMetrics = new DisplayMetrics();
    activity.getWindowManager().getDefaultDisplay().getMetrics(mDisplayMetrics);
    mScreenDensity = mDisplayMetrics.densityDpi;
    mScreenWidth = mDisplayMetrics.widthPixels;
    mScreenHeight = mDisplayMetrics.heightPixels;
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        mMediaProjectionManager = (MediaProjectionManager) activity.getSystemService(Context.MEDIA_PROJECTION_SERVICE);
    }
    else {
        ; // TODO
    }
    mMediaRecorder = new MediaRecorder();
    if (enabled && mVirtualDisplay == null) {
        go();
    }
}
项目:ApkLauncher    文件:MediaProjectionDemo.java   
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.media_projection);

    DisplayMetrics metrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(metrics);
    mScreenDensity = metrics.densityDpi;

    mSurfaceView = (SurfaceView) findViewById(R.id.surface);
    mSurface = mSurfaceView.getHolder().getSurface();
    mProjectionManager =
        (MediaProjectionManager) getSystemService(Context.MEDIA_PROJECTION_SERVICE);

    ArrayAdapter<Resolution> arrayAdapter = new ArrayAdapter<Resolution>(
            this, android.R.layout.simple_list_item_1, RESOLUTIONS);
    Spinner s = (Spinner) findViewById(R.id.spinner);
    s.setAdapter(arrayAdapter);
    s.setOnItemSelectedListener(new ResolutionSelector());
    s.setSelection(0);
}
项目:screenshare-playground    文件:MainActivity.java   
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    String ip = mReceiverIpEditText.getText().toString();
    final SharedPreferences sharedPreferences = getSharedPreferences(PREF_NAME, 0);
    final SharedPreferences.Editor edit = sharedPreferences.edit();
    edit.putString(RECEIVER_IP_KEY,ip);
    edit.commit();

    if(resultCode == RESULT_OK && requestCode==GET_MEDIA_PROJECTION_CODE){
        try {
            @SuppressWarnings("ResourceType") MediaProjectionManager mediaProjectionManager = (MediaProjectionManager) getSystemService(Context.MEDIA_PROJECTION_SERVICE);
            final MediaProjection mediaProjection = mediaProjectionManager.getMediaProjection(resultCode, data);
            mEncoderAsyncTask = new EncoderAsyncTask(this, mediaProjection, mMediaCodecFactory);
            mEncoderAsyncTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
            mSenderAsyncTask = new SenderAsyncTask(ip);
            mSenderAsyncTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
        } catch (IOException e) {
            mStartButton.setEnabled(false);
            mStartButton.setText(getString(R.string.mediacodec_error));
            e.printStackTrace();
        }

    }
}
项目:Telecine    文件:RecordingSession.java   
RecordingSession(Context context, Listener listener, int resultCode, Intent data,
    Analytics analytics, Provider<Boolean> showCountDown, Provider<Integer> videoSizePercentage) {
  this.context = context;
  this.listener = listener;
  this.resultCode = resultCode;
  this.data = data;
  this.analytics = analytics;

  this.showCountDown = showCountDown;
  this.videoSizePercentage = videoSizePercentage;

  File picturesDir = Environment.getExternalStoragePublicDirectory(DIRECTORY_MOVIES);
  outputRoot = new File(picturesDir, "Telecine");

  notificationManager = (NotificationManager) context.getSystemService(NOTIFICATION_SERVICE);
  windowManager = (WindowManager) context.getSystemService(WINDOW_SERVICE);
  projectionManager = (MediaProjectionManager) context.getSystemService(MEDIA_PROJECTION_SERVICE);
}
项目:felix-on-android    文件:MediaProjectionDemo.java   
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.media_projection);

    DisplayMetrics metrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(metrics);
    mScreenDensity = metrics.densityDpi;

    mSurfaceView = (SurfaceView) findViewById(R.id.surface);
    mSurface = mSurfaceView.getHolder().getSurface();
    mProjectionManager =
        (MediaProjectionManager) getSystemService(Context.MEDIA_PROJECTION_SERVICE);

    ArrayAdapter<Resolution> arrayAdapter = new ArrayAdapter<Resolution>(
            this, android.R.layout.simple_list_item_1, RESOLUTIONS);
    Spinner s = (Spinner) findViewById(R.id.spinner);
    s.setAdapter(arrayAdapter);
    s.setOnItemSelectedListener(new ResolutionSelector());
    s.setSelection(0);
}
项目:https-github.com-hyb1996-NoRootScriptDroid    文件:ScreenCapturer.java   
public ScreenCapturer(Context context, Intent data, int screenWidth, int screenHeight, int screenDensity, Handler handler) {
    mScreenWidth = screenWidth;
    mScreenHeight = screenHeight;
    mScreenDensity = screenDensity;
    mHandler = handler;
    MediaProjectionManager manager = (MediaProjectionManager) context.getSystemService(Context.MEDIA_PROJECTION_SERVICE);
    initVirtualDisplay(manager, data, screenWidth, screenHeight, screenDensity);
    mHandler = handler;
    startAcquireImageLoop();
}
项目:https-github.com-hyb1996-NoRootScriptDroid    文件:ScreenCapturer.java   
private void initVirtualDisplay(MediaProjectionManager manager, Intent data, int screenWidth, int screenHeight, int screenDensity) {
    mImageReader = ImageReader.newInstance(screenWidth, screenHeight, PixelFormat.RGBA_8888, 1);
    mMediaProjection = manager.getMediaProjection(Activity.RESULT_OK, data);
    mVirtualDisplay = mMediaProjection.createVirtualDisplay("screen-mirror",
            screenWidth, screenHeight, screenDensity, DisplayManager.VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR,
            mImageReader.getSurface(), null, null);
}
项目:NotifyTools    文件:CaptureHelper.java   
public  static  void fireScreenCaptureIntent(Activity activity ) {
    MediaProjectionManager manager =
            (MediaProjectionManager) activity.getSystemService(MEDIA_PROJECTION_SERVICE);
    Intent intent = manager.createScreenCaptureIntent();
    activity.startActivityForResult(intent, CREATE_SCREEN_CAPTURE);

}
项目:Amazing    文件:ScreenRecordActivity.java   
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
private void init() {
    metrics = this.getResources().getDisplayMetrics();
    width = 720;
    height = 1280;
    //printInfo();
    manager = (MediaProjectionManager) getSystemService(MEDIA_PROJECTION_SERVICE);
}
项目:pc-android-controller-android    文件:ScreenRecodeService.java   
private void initScreenManager() {
    L.d("初始化录屏。。。");

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        mMediaProjectionManager = (MediaProjectionManager)
                getSystemService(Context.MEDIA_PROJECTION_SERVICE);

        mMediaProjection = mMediaProjectionManager.getMediaProjection(Activity.RESULT_OK,
                mCapturePermissionIntent);
    }
    startDisplayManager();
    new Thread(new EncoderWorker()).start();
}
项目:pc-android-controller-android    文件:ScreenPermissionActivity.java   
@Override
    protected void onCreate(Bundle savedInstanceState) {

//        setTheme(android.R.style.Theme_Dialog);//这个在这里设置 之后导致 的问题是 背景很黑
        super.onCreate(savedInstanceState);

        //如下代码 只是想 启动一个透明的Activity 而上一个activity又不被pause
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
        getWindow().setDimAmount(0f);

//        requestScreenShot();

//        PermissionsChecker pc = new PermissionsChecker(this);
//        if (pc.lacksPermissions("android.permission.CAPTURE_VIDEO_OUTPUT",
//                "android.permission.CAPTURE_SECURE_VIDEO_OUTPUT")) {
//        } else {
            MediaProjectionManager mediaProjectionManager = (MediaProjectionManager)
                    getSystemService(Context.MEDIA_PROJECTION_SERVICE);
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                startActivityForResult(
                        mediaProjectionManager.createScreenCaptureIntent(),
                        REQUEST_MEDIA_PROJECTION);
            }
//        }

    }
项目:Auto.js    文件:ScreenCapturer.java   
public ScreenCapturer(Context context, Intent data, int screenWidth, int screenHeight, int screenDensity, Handler handler) {
    mScreenWidth = screenWidth;
    mScreenHeight = screenHeight;
    mScreenDensity = screenDensity;
    mHandler = handler;
    MediaProjectionManager manager = (MediaProjectionManager) context.getSystemService(Context.MEDIA_PROJECTION_SERVICE);
    initVirtualDisplay(manager, data, screenWidth, screenHeight, screenDensity);
    mHandler = handler;
    startAcquireImageLoop();
}
项目:Auto.js    文件:ScreenCapturer.java   
private void initVirtualDisplay(MediaProjectionManager manager, Intent data, int screenWidth, int screenHeight, int screenDensity) {
    mImageReader = ImageReader.newInstance(screenWidth, screenHeight, PixelFormat.RGBA_8888, 2);
    mMediaProjection = manager.getMediaProjection(Activity.RESULT_OK, data);
    mVirtualDisplay = mMediaProjection.createVirtualDisplay("screen-mirror",
            screenWidth, screenHeight, screenDensity, DisplayManager.VIRTUAL_DISPLAY_FLAG_AUTO_MIRROR,
            mImageReader.getSurface(), null, null);
}
项目:ScreenShotAnywhere    文件:ShotsService.java   
private void createVirtualEnvironment() {
    windowWidth = ScreenHelper.getScreenWidth(this);
    windowHeight = ScreenHelper.getScreenHeight(this);
    mScreenDensity = ScreenHelper.getScreenDensity(this);
    mMediaProjectionManager1 = (MediaProjectionManager) getApplication().getSystemService(Context.MEDIA_PROJECTION_SERVICE);
    mNManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
}
项目:rtmp-rtsp-stream-client-java    文件:DisplayBase.java   
public DisplayBase(Context context) {
  this.context = context;
  mediaProjectionManager =
      ((MediaProjectionManager) context.getSystemService(MEDIA_PROJECTION_SERVICE));
  this.surfaceView = null;
  videoEncoder = new VideoEncoder(this);
  microphoneManager = new MicrophoneManager(this);
  audioEncoder = new AudioEncoder(this);
  streaming = false;
}
项目:AppRTC-Android    文件:CallActivity.java   
@TargetApi(21)
private void startScreenCapture() {
  MediaProjectionManager mediaProjectionManager =
      (MediaProjectionManager) getApplication().getSystemService(
          Context.MEDIA_PROJECTION_SERVICE);
  startActivityForResult(
      mediaProjectionManager.createScreenCaptureIntent(), CAPTURE_PERMISSION_REQUEST_CODE);
}
项目:AndroidRTC    文件:CallActivity.java   
@TargetApi(21)
private void startScreenCapture() {
    MediaProjectionManager mediaProjectionManager =
            (MediaProjectionManager) getApplication().getSystemService(
                    Context.MEDIA_PROJECTION_SERVICE);
    startActivityForResult(
            mediaProjectionManager.createScreenCaptureIntent(), CAPTURE_PERMISSION_REQUEST_CODE);
}
项目:video-quickstart-android    文件:ScreenCapturerActivity.java   
private void requestScreenCapturePermission() {
    Log.d(TAG, "Requesting permission to capture screen");
    MediaProjectionManager mediaProjectionManager = (MediaProjectionManager)
            getSystemService(Context.MEDIA_PROJECTION_SERVICE);

    // This initiates a prompt dialog for the user to confirm screen projection.
    startActivityForResult(mediaProjectionManager.createScreenCaptureIntent(),
            REQUEST_MEDIA_PROJECTION);
}
项目:AndroidScreenShot_SysApi    文件:ScreenShotActivity.java   
public void requestScreenShot() {
    if (Build.VERSION.SDK_INT >= 21) {
        startActivityForResult(
                ((MediaProjectionManager) getSystemService("media_projection")).createScreenCaptureIntent(),
                REQUEST_MEDIA_PROJECTION
        );
    }
    else
    {
        toast("版本过低,无法截屏");
    }
}
项目:SCR-Screen-Recorder-app    文件:ProjectionThreadRunner.java   
public void setProjectionData(Intent data) {
    MediaProjectionManager mediaProjectionManager =
            (MediaProjectionManager) context.getSystemService(Context.MEDIA_PROJECTION_SERVICE);

    mediaProjection = mediaProjectionManager.getMediaProjection(Activity.RESULT_OK, data);
    if (mediaProjection != null) {
        //disable callback as it doesn't work anyways
        //mediaProjection.registerCallback(mediaProjectionCallback, handler);
        if (getState() == RecordingProcessState.STARTING) {
            start(file, null);
        } else {
            setState(RecordingProcessState.READY, null);
        }
    }
}
项目:EZScreenshot    文件:ScreenshotActivity.java   
public void createScreenCaptureIntent() {
    LogUtil.LOGI("startActivityForResult");
    MediaProjectionManager projectionManager = (MediaProjectionManager) getSystemService(Context.MEDIA_PROJECTION_SERVICE);
    Intent intent = projectionManager.createScreenCaptureIntent();
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    startActivityForResult(intent, PERMISSION_CODE_MEDIA_PROJECTION);


}
项目:android-screen-shot    文件:TakeScreenShotActivity.java   
public void takeScreenshot() {
    MediaProjectionManager mediaProjectionManager = (MediaProjectionManager)
            getSystemService(Context.MEDIA_PROJECTION_SERVICE);

    startActivityForResult(
            mediaProjectionManager.createScreenCaptureIntent(),
            REQUEST_MEDIA_PROJECTION);
}
项目:androidStreamer    文件:ScreenCaptureActivity.java   
@Override
public void onCreate(Bundle savedInstanceState) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        requestWindowFeature(Window.FEATURE_ACTION_BAR_OVERLAY);
    } else {
        requestWindowFeature(Window.FEATURE_NO_TITLE);
    }
    super.onCreate(savedInstanceState);
    mContext = this;
   // System.out.println(R.layout.activity_screen_streaming);
    setContentView(R.layout.activity_screen_streaming);
    mRootView = findViewById(R.id.content);
    //mRootView.addOnLayoutChangeListener(this);
    DisplayMetrics metrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(metrics);
    mScreenDensity = metrics.densityDpi;
    mMediaRecorder = new MediaRecorder();
    mProjectionManager = (MediaProjectionManager) getSystemService
            (Context.MEDIA_PROJECTION_SERVICE);

    mToggleButton = (ToggleButton) findViewById(R.id.toggle);
    mToggleButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            onToggleScreenShare(v);
        }
    });
}
项目:ProyectoAndroid    文件:Presenter.java   
public void prepareVideo(){
    metrics = new DisplayMetrics();
    view.getWindowManager().getDefaultDisplay().getMetrics(metrics);
    mScreenDensity = metrics.densityDpi;

    mMediaRecorder = new MediaRecorder();

    mProjectionManager = (MediaProjectionManager) view.getSystemService
            (Context.MEDIA_PROJECTION_SERVICE);
}
项目:StraaS-android-sdk-sample    文件:MyScreencastSession.java   
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
@Override
public void onSessionCreate(Context context, SessionListener listener, Bundle bundle) {
    this.mContext = context;
    this.mListener = listener;

    mWindowManager = (WindowManager) mContext.getSystemService(WINDOW_SERVICE);
    mMediaProjectionManager = (MediaProjectionManager) mContext.getSystemService(MEDIA_PROJECTION_SERVICE);

    this.mResultCode = bundle.getInt(EXTRA_SCREEN_CAPTURE_INTENT_RESULT_CODE);
    this.mResultData = bundle.getParcelable(EXTRA_SCREEN_CAPTURE_INTENT_RESULT_DATA);
    this.mVideoQuality = bundle.getInt(EXTRA_LIVE_VIDEO_QUALITY);
    this.mTitle = bundle.getString(EXTRA_LIVE_EVENT_TITLE);
    this.mSynopsis = bundle.getString(EXTRA_LIVE_EVENT_SYNOPSIS);
}