通过adb命令实现双屏异显
am start --display 1 -n com.android.settings/.Settings

通过代码方式实现双屏异显
代码如下:
package com.meig.dualscreendemo;
import androidx.appcompat.app.AppCompatActivity;
import android.app.ActivityOptions;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.hardware.display.DisplayManager;
import android.os.Bundle;
import android.util.Log;
import android.view.Display;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private static final String TAG = "wangjicong";
private Button mBtn;
private Button mBtn1;
private Button mBtn2;
private int secondScreenId = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mBtn = (Button)findViewById(R.id.show_settings);
mBtn.setOnClickListener(this);
mBtn1 = (Button)findViewById(R.id.show_launcher);
mBtn1.setOnClickListener(this);
mBtn2 = (Button)findViewById(R.id.show_car);
mBtn2.setOnClickListener(this);
init();
}
private void init(){
DisplayManager displayManager = (DisplayManager)getSystemService(Context.DISPLAY_SERVICE);
for (Display display:displayManager.getDisplays()){
Log.d(TAG,"display.name = "+display.getName()+",display.id = "+display.getDisplayId());
secondScreenId = display.getDisplayId();
}
}
@Override
public void onClick(View v) {
Intent intent = new Intent();
ComponentName componentName;
ActivityOptions activityOptions = ActivityOptions.makeBasic();
activityOptions.setLaunchDisplayId(secondScreenId);
//adb shell am start --display 1 -n com.android.settings/.Settings
switch (v.getId()){
case R.id.show_settings:
componentName = new ComponentName("com.android.settings","com.android.settings.Settings");
intent.setComponent(componentName);
startActivity(intent,activityOptions.toBundle());
break;
case R.id.show_launcher:
componentName = new ComponentName("com.autolauncher.motorcar","com.autolauncher.motorcar.Speed_Activity");
intent.setComponent(componentName);
startActivity(intent,activityOptions.toBundle());
break;
case R.id.show_car:
componentName = new ComponentName("com.wow.carlauncher.mini","com.wow.carlauncher.mini.view.activity.launcher.LauncherActivity");
intent.setComponent(componentName);
startActivity(intent,activityOptions.toBundle());
break;
default:
break;
}
}
}
本文介绍了如何使用adb命令和代码来实现Android设备的双屏异显功能,包括adb命令操作和具体的代码示例。

8759

被折叠的 条评论
为什么被折叠?



