andrdoid内置视频文件

这个方法只适合有内置存储的情况,至于和平分区的不在考虑之列

1 在vendor/sprd下新建一个文件夹built_in_video 里边放置要内置的视频文件及copy脚步

脚步如下:internal_media.mk

LOCAL_PATH:= vendor/sprd/built_in_video

PRODUCT_COPY_FILES += \

$(LOCAL_PATH)/media/Girs_Gee_0.mp4:system/preloadvideo/Girs_Gee_0.mp4

把这个internal_media.mk include到主mk中

include vendor/sprd/built_in_video/internal_media.mk

2  在vendor/sprd/open-source/tools新建文件夹preloadvideo里边放置加载内置U盘后把system/preloadvideo/Girs文件复制到内置U盘中

Android.mk如下

LOCAL_PATH:= $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE_TAGS := optional

LOCAL_MODULE := preloadvideo.sh

LOCAL_MODULE_CLASS := EXECUTABLES

LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES)

LOCAL_SRC_FILES := preloadvideo.sh

include $(BUILD_PREBUILT)

#!/system/bin/sh

PRELOAD_DEST=/storage/sdcard0/Movies

PRELOAD_FLAG=${PRELOAD_DEST}/preloadvideo

PRELOAD_SOURCE=/system/preloadvideo

if [ ! -d ${PRELOAD_DEST} ]

then

mkdir -p ${PRELOAD_DEST}

fi

if [ ! -f ${PRELOAD_FLAG} ]

then

files=$(ls ${PRELOAD_SOURCE}/)

for i in ${files};do

cat  ${PRELOAD_SOURCE}/${i} > ${PRELOAD_DEST}/${i}

done

echo "abcd" > ${PRELOAD_FLAG}

fi

在主工程主mk中添加

PRODUCT_PACKAGES += \

preloadvideo.sh

3   在和工程mk相同的文件夹下的init.board.rc

service preloadvideo /system/bin/logwrapper /system/xbin/preloadvideo.sh

class main

disabled

oneshot

preloadvideo.sh

4   frameworks/base/services/java/com/android/server/MountService.java

在方法notifyVolumeStateChange

else if (newState == VolumeState.Mounted) {

if (DEBUG_EVENTS) Slog.i(TAG, "updating volume state mounted");

updatePublicVolumeState(volume, Environment.MEDIA_MOUNTED);

action = Intent.ACTION_MEDIA_MOUNTED;

android.os.SystemProperties.set("ctl.start", "preloadvideo");

这个是加载内置存储的时候运行service   preloadvideo把视频复制到内置存储中

时间: 2024-10-27 07:07:24

andrdoid内置视频文件的相关文章

Eclipse spket插件 内置js文件

这一篇将怎么在spket内置js文件,而不用用户自己去添加. 1. 在开发的Eclipse的 运行配置将下面几个插件勾选上. 2. 在org.eclipse.ui.startup拓展里执行(只需执行一次): JSPlugin.getDefault().getPreferenceStore().setValue("js.profile", "BingoTouch"); PS:记得引入com.spket.js的包 3. 生成profiles.xml 这个profiles

wpf中内置资源文件

wpf中包含三种文件类型 资源文件:编译到可执行或库 WPF 程序集中的数据文件. 内容文件:与可执行 WPF 程序集具有显式关联的独立数据文件. 源站点文件:与可执行 WPF 程序集没有关联的独立数据文件. 这三种类型的文件之间的一个重要区别是:资源文件和内容文件在生成时是已知的:程序集明确地知道它们的存在.但是对于源站点文件,程序集可能完全不知道它们,或者通过 pack 统一资源标识符 (URI) 引用知道它们的存在:在后一种情况下,不能保证被引用的源站点文件实际存在. 说说资源文件的使用

存储、读取——Android应用程序内置的文件夹

1.将数据存储到应用程序的文件夹,并读写 Context提供了两个方法,打开应用程序文件夹的I/O,若文件不存在则创建 FileInputStream openFileInputStream(String fileName); FileOuputStream openFileOutputStream(String fileName,int mode); mode: 1. MODE_APPEND: 追加方式存储 2. MODE_PRIVATE: 私有方式存储,其他应用无法访问 3. MODE_WO

python函数 变量 递归 匿名函数 内置函数 文件操作

1 语法 #语法 def 函数名(参数1,参数2,参数3,...): '''注释''' 函数体 return 返回的值 #函数名要能反映其意义 返回值数=0:返回None放回值数=1:返回object放回值数>1:返回tuple 2.定义函数的三种形式 1.无参:应用场景仅仅只是执行一些操作,比如与用户交互,打印2.有参:需要根据外部传进来的参数,才能执行相应的逻辑,比如统计长度,求最大值最小值 3.空函数:设计代码结构 形参即变量名,实参即变量值,函数调用时,将值绑定到变量名上,函数调用结束,

python_day4内置函数补充

之前内容回顾 1.python基础 2.基本数据类型:str.dict.list.tuple.set.. s = "alex" => str # s是创建的一个对象,所有功能被保存在其对应的str的类里 对象是类的实例 isinstance(s, str) ==> True 3.函数式编程 函数定义 内置函数 文件处理 注意: li = [11,22,33,44] def f1(arg):     #此函数没有返回值,默认返回None arg.append(55) li =

9.1hadoop 内置计数器、自定义枚举计数器、Streaming计数器

1.1  计数器 计数器的作用是用来统计数量的,用于记录特定事件的次数,分为内置计数器.自定义java枚举计数器.自定义Stream计数器三大类.用于质量分析,或应用级统计.分析计数器的值比分析一堆日志更高效. 计数器名称 计数器介绍 内置计数器 Hadoop自带的计数器,有特定的计数器名称.例如统计输入.输出的记录数量,输入输出的字节数. 自定义java枚举计数器 用户自定义的枚举型计数器,用于统计用户的特殊要求的计数器,例如统计记录中无效记录的数量. 自定义Streaming计数器 通过向标

2017年05月10日记一次微项目投产 | 安卓版微信内置浏览器不能解析gzip压缩过的mp4视频的问题

前言 今天投产了一个小项目,一个很简单的H5,有播放视频功能,使用了videojs插件. 之前也做过数个视频播放,视频的转压都按照既定流程进行,文件放到FTP后,iphone和安卓机测试下来都没有问题. 于是给链接,业务组直接在微信公众号里投放了.那个企业号有不少关注的人,推送发出去1分钟就有近千阅读量. 但是我在点击链接后,发现项目打不开了,而且该企业官网的主站也挂了,在经过pc端和手机4G下测试发现问题依然存在后,赶紧报bug给其他同事. 通过询问FTP管理员得知,那个"大"企业的

PHP内置函数file_put_content(),将数据写入文件,使用FILE_APPEND 参数进行内容追加

file_put_contents(fileName,data,flags,context) 入参说明: 参数 说明 fileName 要写入数据的文件名 data 要写入的数据.类型可以是 string,array(但不能为多维数组),或者是 stream 资源 flags 可选,规定如何打开/写入文件.可能的值: FILE_USE_INCLUDE_PATH:检查 filename 副本的内置路径 FILE_APPEND:在文件末尾以追加的方式写入数据 LOCK_EX:对文件上锁 contex

iOS使用自定义字体的方法(内置和任意下载ttf\otf\ttc字体文件)

最近做了个有关阅读的应用,使用了自定义字体,学习了一下这方面的知识. 1.首先是最简单也普遍的做法,打包内置字符库文件: 把字体库文件添加到工程,如font1.ttf添加到工程,然后在工程plist添加一项Fonts provided by application,这是个数组,然后添加key item1,value就是刚才说的font1.ttf,如图: 那么在工程里就可以直接使用这个字体,直接用 + (UIFont *)fontWithName:(NSString *)fontName size