ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

RK Android7.1 定制化 itvbox 盒子Launcher

2021-06-17 17:36:11  阅读:217  来源: 互联网

标签:cocos2dx Launcher ROOT dev Android7.1 USER 2.2 android itvbox


定制 itvlauncher.apk 只保留 应用页面

一.vendor\rockchip\common\apps\itvlauncher 

1.1.加载布局资源的 地方 K:\ITVLauncher-master\assets\layout\hot_moretv_layer.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<!--


-------------------  --------------------------------------------------------------------------------------
|                 |  |             |              |                 |                  |                   |
|                 |  |             |              |                 |                  |                   |
|       1         |  |             |              |                 |                  |         7         |
|                 |  |             |              |                 |                  |                   |
|-----------------|  |      2      |       3      |       4         |        5         |-------------------|
|                 |  |             |              |                 |                  |                   |
|                 |  |             |              |                 |                  |                   |
|       0         |  |             |              |                 |                  |         6         |
|                 |  |             |              |                 |                  |                   |
|                 |  |             |              |                 |                  |                   |  
------------------   ---------------------------------------------------------------------------------------
-->

<plist version="1.0">
<dict>
  <!-- 355x200 -->
  <key>item0</key>
  <dict>
    <key>x</key>
    <integer>0</integer>
    <key>y</key>
    <integer>0</integer>
    <key>ref</key>
    <integer>0</integer>
    <key>width</key>
    <string>0.27734</string>
    <key>height</key>
    <string>0.2778</string>
  </dict>

  <!-- 355x200 -->
  <key>item1</key>
  <dict>
    <key>x</key>
    <integer>0</integer>
    <key>y</key>
    <integer>1</integer>
    <key>ref</key>
    <integer>0</integer>
    <key>width</key>
    <string>0.27734</string>
    <key>height</key>
    <string>0.2778</string>
  </dict>

  <!-- 270x405 -->
  <key>item2</key>
  <dict>
    <key>x</key>
    <integer>1</integer>
    <key>y</key>
    <integer>0</integer>
    <key>ref</key>
    <integer>0</integer>
    <key>width</key>
    <string>0.2109</string>
    <key>height</key>
    <string>0.5625</string>
  </dict>

  <!-- 270x405 -->
  <key>item3</key>
  <dict>
    <key>x</key>
    <integer>2</integer>
    <key>y</key>
    <integer>0</integer>
    <key>ref</key>
    <integer>2</integer>
    <key>width</key>
    <string>0.2109</string>
    <key>height</key>
    <string>0.5625</string>
  </dict>

  <!-- 270x405 -->
  <key>item4</key>
  <dict>
    <key>x</key>
    <integer>3</integer>
    <key>y</key>
    <integer>0</integer>
    <key>ref</key>
    <integer>3</integer>
    <key>width</key>
    <string>0.2109</string>
    <key>height</key>
    <string>0.5625</string>
  </dict>

  <!-- 270x405 -->
  <key>item5</key>
  <dict>
    <key>x</key>
    <integer>4</integer>
    <key>y</key>
    <integer>0</integer>
    <key>ref</key>
    <integer>4</integer>
    <key>width</key>
    <string>0.2109</string>
    <key>height</key>
    <string>0.5625</string>
  </dict>
  
  <!-- 355x200 -->
  <key>item6</key>
  <dict>
    <key>x</key>
    <integer>5</integer>
    <key>y</key>
    <integer>0</integer>
    <key>ref</key>
    <integer>5</integer>
    <key>width</key>
    <string>0.27734</string>
    <key>height</key>
    <string>0.2778</string>
  </dict>

  <!-- 355x200 -->
  <key>item7</key>
  <dict>
    <key>x</key>
    <integer>5</integer>
    <key>y</key>
    <integer>1</integer>
    <key>ref</key>
    <integer>6</integer>
    <key>width</key>
    <string>0.27734</string>
    <key>height</key>
    <string>0.2778</string>
  </dict>
</dict>
</plist> 

1.2.依赖于libitvbox.so 加载布局资源

ITVLauncher-master\cocos2dx_patch\cocos2dx-native\cocos2dx\projects\RKTVBoxHD\Classes\layer\HotLayer.cpp

bool HotLayer::init()
{
	if(!CCLayer::init())
	{
		return false;
	}
	CCHttpClient::getInstance()->setTimeoutForConnect(5);
	CCHttpClient::getInstance()->setTimeoutForRead(5);

	mInitHotImg = true;
	setContentLayout("hot_moretv_layer.plist", "grid_focus.png");
	initDataSource();
	return true;
}

1.3.修改布局资源 重新编译lib库 ,淦 这T么还涉及到游戏2D引擎 所以放弃了 就像我当初放开你 

1. 从cocos2dx官网下载cocos2dx 2.2.4, http://www.cocos2d-x.org/

2. 从谷歌官网下载android-ndk-r8d

3. 几个关键目录:
3.1 {$USER_ROOT}/android_dev/cocos2dx-2.2.4     游戏引擎根目录
3.2 {$USER_ROOT}/android_dev/android-ndk-r8d    NDK跟目录

4. 将游戏引擎的修改合并到{$USER_ROOT}/android_dev/cocos2dx-2.2.4目录
cocos2dx/cocos2dx/keypad_dispatcher 覆盖{$USER_ROOT}/android_dev/cocos2dx-2.2.4/cocos2dx/keypad_dispatcher
cocos2dx/cocos2dx/platform/android/jni 覆盖{$USER_ROOT}/android_dev/cocos2dx-2.2.4/cocos2dx/platform/android/jni
cocos2dx/external/cocoswidget 拷贝到{$USER_ROOT}/android_dev/cocos2dx-2.2.4/external/cocoswidget
cocos2dx/external/jsoncpp 拷贝到{$USER_ROOT}/android_dev/cocos2dx-2.2.4/external/jsoncpp

5. 将Laucher工程文件拷贝到
将源码包中,cocos2dx/projects/RKTVBoxHD 拷贝到{$USER_ROOT}/android_dev/cocos2dx-2.2.4/projects/目录

6. 进入{$USER_ROOT}/android_dev/cocos2dx-2.2.4/projects/RKTVBoxHD/proj.android目录,
   修改build_native.sh脚本,配置NDK_ROOT 和 COCOS2DX_ROOT,请配置为绝对目录,例如:
NDK_ROOT={$USER_ROOT}/android_dev/android-ndk-r8d
COCOS2DX_ROOT={$USER_ROOT}/android_dev/cocos2dx-2.2.4
配置完成后,执行# source build_native.sh 即可编译出动态库proj.android/libs/armeabi/libitvbox.so

7. 将libitvbox.so拷贝到android工程,使用Android Studio编译出APK. 修改Native源码后,请重复步骤7生效。

  

  

标签:cocos2dx,Launcher,ROOT,dev,Android7.1,USER,2.2,android,itvbox
来源: https://www.cnblogs.com/crushgirl/p/14894470.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有