但改变分辨率时,发送广播即可:

Intent intent_outputmode_change = new Intent(ACTION_OUTPUTMODE_CHANGE);
     intent_outputmode_change.putExtra(OUTPUT_MODE, outputmode_entries_logic);
     intent_outputmode_change.putExtra("cvbs_mode", 1/0);     
     this.getContext().sendBroadcast(intent_outputmode_change);

import android.content.Context;
import android.content.Intent;
import android.util.Log; public class DisplayUtil {
private final static String ACTION_OUTPUTMODE_CHANGE = "android.intent.action.OUTPUTMODE_CHANGE";
private final static String OUTPUT_MODE = "output_mode";
private final static String ACTION_OUTPUTMODE_SAVE = "android.intent.action.OUTPUTMODE_SAVE"; private final static String ACTION_OUTPUTPOSITION_CHANGE = "android.intent.action.OUTPUTPOSITION_CHANGE";
private final static String ACTION_OUTPUTPOSITION_SAVE = "android.intent.action.OUTPUTPOSITION_SAVE";
private final static String ACTION_OUTPUTPOSITION_DEFAULT_SAVE = "android.intent.action.OUTPUTPOSITION_DEFAULT_SAVE";
private final static String OUTPUT_POSITION_X = "output_position_x";
private final static String OUTPUT_POSITION_Y = "output_position_y";
private final static String OUTPUT_POSITION_W = "output_position_w";
private final static String OUTPUT_POSITION_H = "output_position_h";
private final static String OUTPUT_POSITION_MODE = "output_position_mode";
private static final String TAG = "======"; public static void setOutputMode(Context c, String mode) {
Intent intent_outputmode_change = new Intent(ACTION_OUTPUTMODE_CHANGE);
intent_outputmode_change.putExtra(OUTPUT_MODE, mode);
intent_outputmode_change.putExtra("cvbs_mode", 0); c.sendBroadcast(intent_outputmode_change); Intent intent_outputmode_save = new Intent(ACTION_OUTPUTMODE_SAVE);
intent_outputmode_save.putExtra(OUTPUT_MODE, mode);
c.sendBroadcast(intent_outputmode_save); } public static void setPosition(Context context, int l, int t, int r, int b,
int mode) {
Intent intent_output_position = new Intent(ACTION_OUTPUTPOSITION_CHANGE);
intent_output_position.putExtra(OUTPUT_POSITION_X, l);
intent_output_position.putExtra(OUTPUT_POSITION_Y, t);
intent_output_position.putExtra(OUTPUT_POSITION_W, r);
intent_output_position.putExtra(OUTPUT_POSITION_H, b);
intent_output_position.putExtra(OUTPUT_POSITION_MODE, mode);
context.sendBroadcast(intent_output_position); // savePosition(context, l,t,r,b); Log.i(TAG, "--------------------------------position Set");
Log.d(TAG, "--------------------------------set display axis x = " + l);
Log.d(TAG, "--------------------------------set display axis y = " + t);
Log.d(TAG, "--------------------------------set display axis width = " + r);
Log.d(TAG, "--------------------------------set display axis height = " + b); } public static void savePosition(Context context, int left, int top,
int width, int height) {
Intent intent_output_position = new Intent(ACTION_OUTPUTPOSITION_SAVE);
intent_output_position.putExtra(OUTPUT_POSITION_X, left);
intent_output_position.putExtra(OUTPUT_POSITION_Y, top);
intent_output_position.putExtra(OUTPUT_POSITION_W, width);
intent_output_position.putExtra(OUTPUT_POSITION_H, height);
context.sendBroadcast(intent_output_position);
// Log.i(TAG, "--------------------------------position Set");
// Log.d(TAG, "--------------------------------set display axis x = " + x);
// Log.d(TAG, "--------------------------------set display axis y = " + y);
// Log.d(TAG, "--------------------------------set display axis width = " + position_cur.width);
// Log.d(TAG, "--------------------------------set display axis height = " + position_cur.height); } public static void savePositionDefault(Context context) {
Intent intent_output_position = new Intent(ACTION_OUTPUTPOSITION_DEFAULT_SAVE);
context.sendBroadcast(intent_output_position); } }

分辨率显示outputmode_entries_display和取值outputmode_entries_logic:

<!-- Display settings.  The type of output mode to show. -->
      <string-array name="outputmode_entries_display">
          <item>480P</item>
          <item>576P</item>
          <item>720P 60HZ</item>
          <item>1080I 60HZ</item>
          <item>1080P 60HZ</item>
          <item>720P 50HZ</item>
          <item>1080I 50HZ</item>
      </string-array>
      <string-array name="outputmode_entries_logic">
          <item>480p</item>
          <item>576p</item>
          <item>720p</item>
          <item>1080i</item>
          <item>1080p</item>
          <item>720p50hz</item>
          <item>1080i50hz</item>
      </string-array>

<receiver android:name="net.sunniwell.settings.sdzx.content.OutputSettingsBroadcastReceiver">
           <intent-filter>
               <action android:name="android.intent.action.BOOT_COMPLETED"/>
               <action android:name="android.intent.action.OUTPUTMODE_CHANGE"/>
               <action android:name="android.intent.action.OUTPUTMODE_CANCEL"/>
               <action android:name="android.intent.action.OUTPUTMODE_SAVE"/>
               <action android:name="android.intent.action.OUTPUTPOSITION_CHANGE"/>
               <action android:name="android.intent.action.OUTPUTPOSITION_CANCEL"/>
               <action android:name="android.intent.action.OUTPUTPOSITION_SAVE"/>
               <action android:name="android.intent.action.OUTPUTPOSITION_DEFAULT_SAVE"/>
               <action android:name="android.intent.action.DISP_CHANGE"/>
               <action android:name="android.intent.action.REALVIDEO_ON"/>
               <action android:name="android.intent.action.REALVIDEO_OFF"/>
               <action android:name="android.intent.action.VIDEOPOSITION_CHANGE"/>
               <action android:name="android.intent.action.CVBSMODE_CHANGE"/>
           </intent-filter>
        </receiver>

如果setting没带处理,需要自己做:

settings源码的文件:

OutputSettingsBroadcastReceiver.java 改变分辨率。

HDMICheckHandler.java 自动检测hdmi最佳分辨率。

位置坐标文件,实现屏幕放大,缩小: /sys/class/ppmgr/ppscaler_rect: x:58,y:29,w:1280,h:720

分辨率文件: /sys/class/display/mode : 1080p

android HDMI 清晰度 分辨率的更多相关文章

  1. 获取Android设备屏幕分辨率

    1.Android 4.3引入的wm工具: a.获取Android设备屏幕分辨率: adb shell wm size b.获取android设备屏幕密度: adb shell wm density ...

  2. Android 获取屏幕分辨率

    原文:Android 获取屏幕分辨率 得到一个屏幕尺寸的三种方法如下:        // 通过WindowManager获取        DisplayMetrics dm = new Displ ...

  3. android适配不同分辨率的手机

    android中不同手机分辨率适配问题 在项目开发的过程中,同一个布局对应不同的手机会显示出不同的效果.导致这个现象产生的原因是不同手机的分辨率不同.在android sdk提供的帮助文档中,我们可以 ...

  4. android开发图片分辨率

    一直受到android开发图片分辨率问题困扰.drawable-(xdpi,hdpi,mdpi,ldpi,nodpi)这几个文件夹到底怎么放图片呢? dpi是什么呢? dpi是“dot per inc ...

  5. Android获取手机分辨率DisplayMetircs类

    关于Android中手机分辨率的使用 Android 可设置为随着窗口大小调整缩放比例,但即便如此,手机程序设计人员还是必须知道手机屏幕的边界,以避免缩放造成的布局变形问题. 手机的分辨率信息是手机的 ...

  6. Unity3D Android手机屏幕分辨率问题

    Android手机屏幕分辨率五花八门,导致开发时不好把握,还好各个引擎对这个屏幕分辨率问题都有较好的处理方式:unity3D 也为我们提供了一个不错的解决方案. 在Unity3D 进行 android ...

  7. android DPI与分辨率的关系及计算方式

    android DPI与分辨率的关系及计算方式   Low   density (120), ldpi Medium   density (160), mdpi High   density (240 ...

  8. RK3288 指令查看HDMI当前分辨率和支持的分辨率

    $ adb shell root@xxx:/ # cd /sys/class/display/HDMI cd /sys/class/display/HDMI root@xxx:/sys/class/d ...

  9. Android MediaRecorder自定义分辨率

    Android MediaRecorder自定义分辨率 工作这么久了,确实积累了不少东西,但都是以文档的形式存在U盘里的,为什么不写博客呢?因为懒啊!!!总感觉博客太难写了(大概是上学时候写作文恐惧症 ...

随机推荐

  1. mysql客户端授权后连接失败问题

    在本地(192.168.1.152)部署好mysql环境,授权远程客户机192.168.1.%连接本机的mysql,在iptables防火墙也已开通3306端口.如下:mysql> select ...

  2. NOI 1.7编程基础之字符串(35题)

    01:统计数字字符个数 查看 提交 统计 提问 总时间限制:  1000ms 内存限制:  65536kB 描述 输入一行字符,统计出其中数字字符的个数. 输入 一行字符串,总长度不超过255. 输出 ...

  3. SDRAM 学习(三)之command

    command 模块总述 SDRAM 的 command 模块的内容包括如下: 1.对初始化请求.配置模式寄存器.读/写.刷新.预充电等命令的一个优先级的控制. 2.对命令执行时间进行控制,依据如图1 ...

  4. PHP基础14:表单处理

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. Flume的安装与配置

    Flume的安装与配置 一.       资源下载 资源地址:http://flume.apache.org/download.html 程序地址:http://apache.fayea.com/fl ...

  6. 搭建Apache+MySQL+PHP环境

    1.1 搭建Apache+MySQL+PHP环境 1.1.1 关于安装前的准备 配置好yum源(/etc/yum.repos.d/)目录下,不会就去寻求运维支持. httpd-2.2.29.tar.g ...

  7. C# 利用QRCode生成二维码图片

    网上生成二维码的组件是真多,可是真正好用的,并且生成速度很快的没几个,QRCode就是我在众多中找到的,它的生成速度快.但是网上关于它的使用说明,真的太少了,大都是千篇一律的复制粘贴.这是本要用它做了 ...

  8. 优化Hibernate所鼓励的7大措施

    优化Hibernate所鼓励的7大措施: 1.尽量使用many-to-one,避免使用单项one-to-many2.灵活使用单向one-to-many3.不用一对一,使用多对一代替一对一4.配置对象缓 ...

  9. 20145215《Java程序设计》第2周学习总结

    20145215<Java程序设计>第二周学习总结 教材学习内容总结 Java语言中的很多基本语法都和C语言类似,在这里我总结一下Java中的基本语法: 标识符: 标识符是程序中自定义的一 ...

  10. 简便的自动布局,对UIStackView的个人理解!

    序言: 更新了很久的Linux,我怕朋友们都视觉疲劳了,今天就更新在学ios开发时候,对一些知识点的理解.希望各位会喜欢! 正文: UIStackView 类提供了一个高效的接口用于平铺一行或一列的视 ...