欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

小视频APP开发中关于存储、广告位及官方通知的一些短视频源代码处理

程序员文章站 2022-03-13 09:45:22
...

短视频作为时下粉丝经济中最汇聚流量的内容传播方式,吸引着一大批资本家的投资热情,短视频系统开发正处在移动互联网的风口之中。面对短视频行业的发展机遇短视频系统也在不断更新,下面就为大家介绍一下小视频APP开发中的储存方式、广告位及官方通知的一些代码。
一、小视频APP开发的存储形式方式
以某集成了七牛云存储和腾讯云存储的短视频APP系统为例,网站管理员可以在后台选择存储形式,方便切换。
采用云存储可以让逻辑功能与存储单元相分离,避免了因为物理或其他原因造成存储数据的不可逆性损毁,保证了数据安全。同时,采用云存储的形式,可以通过CDN数据分发,提高文件的访问速度。
用户可以登录云存储,管理存储信息,建立存储数据桶等,只需要简单几步配置,即可轻松完成数据存储和读取操作,方便快捷。

<div class="control-group">
<label class="control-label">选择存储方式</label>
<div class="controls">
										
	<label class="radio inline"><input type="radio" value="1" name="post[cloudtype]" <eq name="config['cloudtype']" value="1">checked="checked"</eq>>七牛云存储</label>
	<label class="radio inline"><input type="radio" value="2" name="post[cloudtype]" <eq name="config['cloudtype']" value="2">checked="checked"</eq>>腾讯云存储</label>
								
</div>
</div>

if($configpri['cloudtype']==1){  //七牛云存储
	$savepath=date('Ymd').'/';
	//上传处理类
	$config=array(
		 'rootPath' => './'.C("UPLOADPATH"),
		 'savePath' => $savepath,
		 'maxSize' => 100*1048576, //100M
		 'saveName'   =>    array('uniqid',''),
		 'exts'       =>    array('mp4'),
		 'autoSub'    =>    false,
	);

	$config_qiniu = array(
		'accessKey' => $configpri['qiniu_accesskey'], //这里填七牛AK
		'secretKey' => $configpri['qiniu_secretkey'], //这里填七牛SK
		'domain' => $configpri['qiniu_domain'],//这里是域名
		'bucket' => $configpri['qiniu_bucket']//这里是七牛中的“空间”
	);
	$upload = new \Think\Upload($config,'Qiniu',$config_qiniu);
	$info = $upload->upload();
					
	if ($info) {
		//上传成功
		//写入附件数据库信息
		$first=array_shift($info);
		if(!empty($first['url'])){
		     $url=$first['url'];	                	
		}else{
		                		$url=C("TMPL_PARSE_STRING.__UPLOAD__").$savepath.$first['savename'];
		                	
		}
		                
	} else {
		 //上传失败,返回错误
		 $this->error('添加失败');
	}

}else if($configpri['cloudtype']==2){ //腾讯云存储

	require(SITE_PATH.'api/public/txcloud/include.php');
	$bucket = $configpri['txcloud_bucket'];
	$src = $_FILES["file"]["tmp_name"];
					
	$folder = '/'.$configpri['txvideofolder'];
	$dst = $folder.'/'.$_FILES["file"]["name"];
	$config = array(
		'app_id' => $configpri['txcloud_appid'],
		'secret_id' => $configpri['txcloud_secret_id'],
		'secret_key' => $configpri['txcloud_secret_key'],
		'region' => $configpri['txcloud_region'],  
		'timeout' => 60
	);

	date_default_timezone_set('PRC');
	$cosApi = new Api($config);

	$ret = $cosApi->upload($bucket, $src, $dst);

	if($ret['code']!=0){
		//上传失败,返回错误
		$this->error('添加失败');
	}

	$url = $ret['data']['source_url'];
										
}

二、小视频APP开发的广告位功能
有人才有江湖,提升客户粘度是APP的首要任务,等具备了一定流量,APP就可以开始接广告了,网站后台提供了广告功能开关,当开关打开时,用户在观看视频时就会看到平台运营者在后台添加的视频广告文件,管理员可以后台设置提升或降低广告密度。广告的视频链接可以采用上传视频文件或填写外部链接的方式,还可设置广告到期时间,方便运营方与广告商协定费用问题。

<div class="control-group">
	<label class="control-label">广告标题</label>
	<div class="controls">
		<input type="text" name="title">
		<span class="form-required">*</span>
	</div>
</div>
				
				
<div class="control-group">
	<label class="control-label">广告封面</label>
	<div class="controls">
		<div >
			<input type="hidden" name="thumb" id="thumb2" value="">
				<a href="javascript:void(0);" onclick="flashupload('thumb_images', '附件上传','thumb2',thumb_images,'1,jpg|jpeg|gif|png|bmp,1,,,1','','','');return false;">
					<img src="__TMPL__Public/assets/images/default-thumbnail.png" id="thumb2_preview" width="135" style="cursor: hand" />
				</a>
			<input type="button" class="btn btn-small" onclick="$('#thumb2_preview').attr('src','__TMPL__Public/assets/images/default-thumbnail.png');$('#thumb2').val('');return false;" value="取消图片">
		</div>
		<span class="form-required"></span>
</div>
</div>

<div class="control-group">
	<label class="control-label">到期时间</label>
	<div class="controls">
		<input type="text" name="ad_endtime" class="js-datetime date"  autocomplete="off" >
		<span class="form-required"></span>
	</div>
</div>

三、小视频APP开发的官方通知功能
当有活动或其他事务需要与客户沟通时,管理员可在后台发布一条通知消息,消息类型可以是文本消息,也可以是外部链接,既可以是简单的问题,也可以是图文并茂的形式。该功能能够让App内的用户及时接收到官方通知,拉近了官方与用户之间的距离,能够有效提升客户粘度,用沟通的方式缓解双方可能出现的矛盾。

<div class="control-group">
	<label class="control-label">消息标题</label>
	<div class="controls">
		<input type="text" id="title" name="title">
		<span class="form-required">*</span>
	</div>
</div>
				

<div class="control-group">
	<label class="control-label">消息类型</label>
					
	<div class="controls">
		<label class="radio inline" ><input type="radio" name="msg_type" value="1" checked  />文本类型</label>
		<label class="radio inline" ><input type="radio" name="msg_type" value="2" >外部链接</label>
	</div>
					
</div>

<div class="control-group" id="msg_con">
	<label class="control-label">消息内容</label>
	<div class="controls">
		<script type="text/plain" id="content" style="width: 70%;" name="content"></script>
						
	</div>
</div>

<div class="control-group" id="linkUrl">
	<label class="control-label">外部链接</label>
		<div class="controls">
			<input type="text" name="url" id="url">
						
		</div>
</div>

以上就是关于小视频APP开发中云存储、广告位和官方通知功能的短视频源代码,仅作学习之用。
原创声明:本篇文章那为原创信息,转载请注明出处及作者