IDEA编译安卓源码TVBox

news2024/9/29 21:19:42

因为电视x受限,无法观看电视直播,为了春晚不受影响,于是网络一顿搜索,试过多个APP,偶尔找到这款开源的TVBox,寒假在家,随便拿来练练手,学习安卓APP的编写,此文做以记录,仅限播放APP技术学习,与直播源无关。

I、下载TVBox项目并修改

II、安装IDEA 2022.3.1;内置JDK17、Gradle7.5.1,

      使用IDEA下载并设置Android SDK

       设置Window系统环境变量:

        ANDROID_SDK_ROOT=C:\Users\Administrator\AppData\Local\Android\Sdk

III、导入并编译TVBox项目

IV、其他

一、TVBox项目
1、简介

Github社区开源项目,Android视频播放软件

下载地址:https://github.com/CatVodTVOfficial/TVBoxOSC

https://codeload.github.com/CatVodTVOfficial/TVBoxOSC/zip/refs/heads/main

项目文件\app\build.gradle,声明编译和目标SDK版本为30,JDK版本为8

2、项目修改,共2处

(1)、文件\gradle\wrapper\gradle-wrapper.properties,指定Gradle版本6.7.1

因为services.gradle.org网站下载缓慢,需要将的distributionUrl值改为腾讯云地址

https://mirrors.cloud.tencent.com/gradle/gradle-6.7.1-bin.zip

(2)、根目录build.gradle文件

为提高下载仓库速度,需要在项目根目录build.gradle文件,buildscript的repositories中增加阿里云镜像

        maven { url 'https://maven.aliyun.com/repository/public/' }
        maven { url 'https://maven.aliyun.com/repository/google/' }
        maven { url 'https://maven.aliyun.com/repository/jcenter/' }
        maven { url 'https://maven.aliyun.com/repository/central/' }
二、安装设置IDEA

版本:推荐Ultimate 2022.3.1(最新版本没有Android SDK),默认内置JDK17、Gradle7.5.1

安装目录(可以自定),本文使用:D:\JetBrains\IntelliJ IDEA 2022.3.1\

1、打开TVBox项目,略
2、下载Android SDK

File --> Settings -->Appearance & Behavior --> System Settings -->Android SDK

等待下载完成,复制Android SDK Location路径,

3、设置Windows系统变量

ANDROID_SDK_ROOT= C:\Users\Administrator\AppData\Local\Android\Sdk

三、编译TVBox
1、Build Project项目

提示xwalk_shared_library-23.53.589.4.aar无法下载,可能因为xwalk.org站点不稳定,

可以再次尝试Build,或者下载笔者提供的org.xwalk.rar,解压到C:\Users\Administrator\.gradle\caches\modules-2\files-2.1

 2、Build APK编译为apk

虽然提示出错,但是编译成功,忽略。

编译后的APK应用

三、其他

1、如果提示JDK无效,则手动下载JDK11

2、设置Terminal

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1506275.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

面向对象的编程语言是什么意思?——跟老吕学Python编程

面向对象的编程语言是什么意思?——跟老吕学Python编程 面向对象是什么意思?面向对象的定义面向对象的早期发展面向对象的背景1.审视问题域的视角2.抽象级别3.封装体4.可重用性 面向对象的特征面向对象的开发方法面向对象程序设计基本思想实现 面向对象的…

超级终端Terminator

安装 在终端中输入 sudo apt install terminator 使用 CtrlShiftT 打开终端 右键选择水平分割/垂直分割 或者使用 CtrlShiftO或CtrlShiftE CtrlShiftW可以撤销刚刚的分割(删除终端窗口指令) Alt箭头(方向键)可以在…

牛客周赛 Round 36 解题报告 | 珂学家 | 状态DP + 构造 + 9棵树状数组

前言 整体评价 今天相对容易,E的构造题,感谢出题人极其善意的Case 1, 算是放水了。F题是个很典的结论题,由于存在动态点修改,所以引入树状数组做区间和的快速计算。 A. 小红的数位删除 题型: 签到 s input()print (s[:-3])B. …

Gradle模块化最佳实践

一,模块化的原因及意义 模块化是一种将大型的软件系统拆分成相互独立的模块的方法。具有以下优势: 代码复用:不同的模块可以共享相同的代码。这样可以避免重复编写相同的代码,提高开发效率。模块独立性:每个模块都可…

Mysql数据库-基本表操作

1.表操作 创建表:CREATE TABLE table_name ( field1 datatype, field2 datatype, field3 datatype ) character set 字符集 collate 校验规则 engine 存储引擎; field 表示列名 datatype 表示列的类型 character set 字符集,如果没有指定字符集&#xff…

单文件组件SFC及Vue CLI脚手架的安装使用

单文件组件SFC及Vue CLI脚手架的安装使用 Vue 单文件组件(又名 *.vue 文件,缩写为 SFC)是一种特殊的文件格式,它允许将 Vue 组件的模板、逻辑 与 样式封装在单个文件中。 为什么要使用 SFC 使用 SFC 必须使用构建工具&#xff…

js实现文本内容过长中间显示...两端正常展示

实现思路 获取标题盒子的真实宽度, 我这里用的是clientWidth;获取文本内容所占的实际宽度;根据文字的大小计算出每个文字所占的宽度;判断文本内容的实际宽度是否超出了标题盒子的宽度;通过文字所占的宽度累加之和与标题盒子的宽度…

05 排序与分页

排序与分页 1 排序数据 1.1 排序规则 使用 ORDER BY 子句排序 ASC(ascend): 升序DESC(descend):降序 ORDER BY 子句在SELECT语句的结尾 1.2 单列排序 SELECT last_name, job_id, department_id, hire_date FROM empl…

蓝桥杯备战刷题-滑动窗口

今天给大家带来的是滑动窗口的类型题,都是十分经典的。 1,无重复字符的最长子串 看例三,我们顺便来说一下子串和子序列的含义 子串是从字符串里面抽出来的一部分,不可以有间隔,顺序也不能打乱。 子序列也是从字符串里…

数据分析-Pandas画分布密度图

数据分析-Pandas画分布密度图 数据分析和处理中,难免会遇到各种数据,那么数据呈现怎样的规律呢?不管金融数据,风控数据,营销数据等等,莫不如此。如何通过图示展示数据的规律? 数据表&#xff…

CAE模拟仿真工具CEETRON Envision:大数据可视化助力工业设计与协同

行业: 制造业; 工业设计; 汽车;航天 挑战:工业客户需要有效的方法来处理CAE数据;ESTECO寻求提供CAE可视化功能来帮助客户做出决策;许多可用的可视化工具无法提供对模型中数据的完全访问以进行深入分析 解决方案&…

Linux智能网关结合Node-RED实现实时工业数据采集

工业4.0的发展,物联网技术在制造业中的应用越来越广泛。其中,基于Linux系统的工业物联网智能网关因其开放性、稳定性和安全性而备受青睐。这类智能网关创新性地集成了开源工具Node-RED,为从各种工业设备(如PLC)中高效收…

前端学习之行内和块级标签

行内标签 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>span</title> </head> <body><!-- 行内标签特点&#xff1a;1、不换行,一行可以放多个2、默认宽度内容撑开代表&#…

Python中eval与exec的使用及区别

最近开发中用到了eval()与exec()这两个函数&#xff0c;不知道在哪种场景下用哪个函数&#xff0c;所以就翻了下Python的文档。这里就来简单说一下这两个函数的区别 1. eval函数 函数的作用&#xff1a; 计算指定表达式的值。也就是说它要执行的Python代码只能是单个运算表达…

虚拟机实验环境配置与使用(计算机系统2)

一、 实验目标&#xff1a; 熟悉Linux上C程序的编译和调试工具&#xff0c;包括以下内容&#xff1a; 1. 了解Linux操作系统及其常用命令 2. 掌握编译工具gcc的基本用法 3. 掌握使用gdb进行程序调试 二、实验环境与工件 1.个人电脑 2. Fedora 13 Linux 操作系统 3. gcc…

YOLOV5 初体验:简单猫和老鼠数据集模型训练

1、前言 前两天&#xff0c;通过OpenCV 对猫和老鼠视频的抽取&#xff0c;提取了48张图片。这里不再介绍&#xff0c;可以参考之前的文章&#xff1a;利用OpenCV 抽取视频的图片&#xff0c;并制作目标检测数据集-CSDN博客 数据的目录如下&#xff1a; 项目的下载见文末 2、制…

Storyboard动画、EventTrigger事件触发器

就是动画&#xff0c;要注意的就是EventTrigger中的SourceName就是想要实现这个功能的按钮 <StackPanel Orientation"Vertical"><Rectanglex:Name"rect"Width"200"Height"40"Fill"Pink" /><StackPanel Orie…

Vue3学习记录(六)--- 组合式API之依赖注入和异步组件

一、依赖注入 1、简介 ​ 在前面的笔记中&#xff0c;我们学习过父组件向子组件传递数据时&#xff0c;需要借助props来实现。但如果父组件想要向孙子组件传递数据&#xff0c;那就要连续使用两层props逐级向下传递&#xff0c;如果要接收数据的是更深层的后代组件&#xff0…

同一交换机下不同网段的终端通信

文章目录 一个有趣的实验 大家都知道不同网段的IP地址要想通信需要通过网关进行路由转发&#xff0c;而一般通过路由器来做默认网关。 一个有趣的实验 一台二层交换机下&#xff0c;连接两个不同网段的PC&#xff0c;实现彼此之间的通信。 一台S3700交换机&#xff0c;两台PC。…

【金三银四】Spring面试题

目录 1、什么是Spring2、说一下Spring的IOC3、Spring的AOP4、连接点&#xff1f;切入点&#xff1f;5、Spring AOP 是通过什么实现的6、Spring Bean的生命周期是怎么样的&#xff1f;7、Spring Bean的初始化过程是怎么样8、Spring的事务传播机制有哪些&#xff1f;9、Autowired…