当前位置:  编程技术>移动开发
本页文章导读:
    ▪电视机是否该退出历史的舞台        电视是否该退出历史的舞台 电视还有救吗?如果从电视内容来看,中国电视的创造力依然蓬勃旺盛。不管是《甄嬛传》、《步步惊心》、《心术》等电视剧,还是《中国好声音》、《我是歌.........
    ▪ 字符串的MD5的32位加密跟16位加密        字符串的MD5的32位加密和16位加密 import java.security.MessageDigest;import java.util.Locale; public class MD5Util {         public static String encode(String content) {                try {                      .........
    ▪ 时间戳变换为日期工具apk源码实现       时间戳转换为日期工具apk源码实现将时间戳转换为日期,如程序中获取到的时间戳为:1377921697453,转换为日期后为:2013年08月23日 12时01分37秒。 废话不说直接上源码: package com.jinhoward.times.........

[1]电视机是否该退出历史的舞台
    来源: 互联网  发布时间: 2014-02-18
电视是否该退出历史的舞台

谁还看电视?这样的提问,早几年或许只是数码发烧友的不屑。而今天,不看电视已是大势所趋。

国家新闻出版广电总局发展研究中心发布的《中国视听新媒体发展报告(2013)》用数字印证了人们的猜测:北京地区电视机开机率从三年前的70%下降至30%。青年人都转向了电脑、平板和智能手机,网络已经成为收看热播电视剧的主要渠道。而40岁以上者成了收看电视的主流人群。

电视还有救吗?如果从电视内容来看,中国电视的创造力依然蓬勃旺盛。不管是《甄嬛传》、《步步惊心》、《心术》等电视剧,还是《中国好声音》、《我是歌手》等万人空巷的综艺节目,这些好作品依然吸引着万千观众的眼球,在微博、贴吧等社交媒体里激起一次次讨论热潮。

只是,越来越多的人,或者人们把越来越多的时间,从电视前挪开,不去忍受无法掐断的广告;而是选择平板、电脑和手机,在地铁、公共汽车等旅途,在自己控制的零碎和休闲时间,去观看自己挑选的节目。

这是一次乾坤大挪移,如果和电视相关的各方——电视台、电视机厂家以及所有习惯了灌输式可控式传播的人们,不去拥抱互联网,那么他们最终都会被汹涌的技术浪潮和改变了习惯的人流所淘汰,变成无人问津的死角。

用一句话来形容这一转变,那就是广播模式的式微,自助点播模式的兴起。后者的实质就是互联网模式在电视领域的应用。其实,电视产业正处在变革的前夜。我们可以用手机产业来做一个类比:当年乔布斯以iPhone横空出世,用电脑+互联网的模式,完成了对传统手机的颠覆。今天,各种暗藏杀机的盒子,正在以类似的方式(智能设备+互联网开放体系),颠覆传统的电视产业。传统电视厂商如果不能拥抱变化,或许就会变成电视行业的摩托罗拉、诺基亚……当然,应对得当,也能变成三星。不过,三星电视自己显然更有潜质。

从互联网角度来看,电视只不过是一个显示设备罢了。你在手机、电脑上看的视频,使用的App(优酷、土豆、搜狐视频、爱奇艺……),也完全可以在电视上看。当然,这是一个极度简化的思路,实际操作起来还有各种实际问题,比如屏幕大小、分辨率的适配,不同屏幕颜色、明暗、对比度的微调,以及家中的网速能否支持视频流畅播放。另一大问题就是操控和输入方式的不同,电脑是通过鼠标和键盘,手机、平板通过触摸屏,而电视的最佳操控方式,应该还是遥控器。

不过,一切都不是问题,一切都在迎刃而解。五年前,人们很难想象手机的功能会跟电脑一样强大,毕竟,屏幕、操控、网速都跟不上嘛。但在苹果、Google的Android,以及各大运营商、手机厂商的努力下,短短几年,手机已经完全可以媲美电脑。下一个技术篇章,也会以极快的速度翻篇的。

这一次的主角,或许不是电视(你就把它当显示器吧),而是盒子。想象一下,把电脑的主机塞到盒子里,把键盘鼠标变成遥控器,一切不就完工了嘛。

带宽已不是问题,现在许多小区的宽带已达到20M、50M,完全胜任在线高清视频;硬件也已成熟,很多盒子的价格都在500元以下;更重要的是,一个开放的操作系统可以承载各种软件和视频内容。这一次的主角又是Android,在手机领域异军突起的绿色机器人,现在逐渐成为盒子里的标配。换句话说,各种Android应用稍加改造,就可以供电视盒子使用,互联网上多了越来越多的电视App,以及相关的app市场。

小米、乐视是这一阶段的先行者。“出头鸟”小米盒子在短暂搁浅后,3月首次发售,1万台几分钟就被抢购一空,4月又发布3万台,同样被“秒杀”。而乐视C1盒子发布时,5万台7小时售罄,C1S发布时5万台1小时售完。

其实,在小米、乐视这些大事声张的产品背后,还有一大群不知名的盒子(也被贴上高清播放器之类的标签),有人称之为山寨货。许多发烧友已经享受多年的福利:如果你家的宽带有5M以上的速度,只需将盒子插上网线,用HDMI接入电视,你就可以享受所有互联网视频(优酷、腾讯、搜狐、爱奇艺……)的海量电视、电影了。最近,以生产网卡、路由器著称的TP-LINK公司,甚至也推出了类似产品——TP Mini大眼睛。这个集成了路由器和机顶盒功能的产品,引起了不少发烧友的关注。

这么好的事情,为什么很多人不知道呢?这里有多方面原因。首先,这些盒子功能再强大,操作毕竟不如电视操作那么傻瓜,需要一些调试和设置。其次,也更重要的原因在于,电视盒子在中国仍然处于灰色地带。按国家有关政策,机顶盒是不能随便上互联网的。当然,以上提及的诸多盒子,是不是机顶盒呢?这就见仁见智了。

据国家广电总局于2011年颁发的《持有互联网电视牌照机构运营管理要求》(业内称181号文)专门规定,机顶盒产品只能跟有互联网电视牌照的内容网站合作,机顶盒“不能将公共互联网上的内容直接提供给用户”。

简单翻译一下,电视可以上网,但必须上指定的网站。

这个国度的某些事情,不是技术和商业常识可以揣度的。比如PS3、XBOX、WII等集中了全球最顶尖技术的游戏设备,你是无法在中国大陆通过正规渠道购买的。而其政策限制,据说是2000年颁布的某一项规定。而小米盒子遇到的曲折,Kindle入华的一唱三叹,背后都有类似的隐情。

阅历丰富的公司都渐渐学会了一招:当一项新产品无法被现有政策定义时,最好选择就是勇敢的做,但一定不要声张,更不要定性。以小米盒子而言,如果不把自己描述成电视机顶盒,而定位成压缩型的电脑主机或者手机配件,一切或许会顺畅得多。

当然,互联网化的视听变革,只是一种技术的可能性,数字电视、IPTV也在争夺和发展自己的用户和市场。更有悬念的问题是,硬件(电视、盒子)、网络传输(宽带接入商)、软件和内容方(各种视频服务公司)如何构建一个多方受益的模式,是订阅收费,还是广告分成?电视会和数字音乐、电子书一样,走向相对封闭的苹果App Store模式吗?新电视也需要苹果和亚马逊那样的巨头吗?一切仍是未知数。

抽象的说,技术、商业都不是最终话事人。当政策制定者以刻舟求剑的思路来规范管理新技术时,或许只有用户的选择和自我教育(自发使用新工具),才能最终决定新行业的地貌。


    
[2] 字符串的MD5的32位加密跟16位加密
    来源: 互联网  发布时间: 2014-02-18
字符串的MD5的32位加密和16位加密
  • import java.security.MessageDigest;
  • import java.util.Locale;

  • public class MD5Util {

  •         public static String encode(String content) {
  •                 try {
  •                         MessageDigest digest = MessageDigest.getInstance("MD5");
  •                         digest.update(content.getBytes());
  •                         return getEncode16(digest);
  •                         //return getEncode32(digest);
  •                 } catch (Exception e) {

  •                 }
  •                 return null;
  •         }


  •         /**
  •         * 32位加密
  •         * @param digest
  •         * @return
  •         */
  •         private static String getEncode32(MessageDigest digest) {
  •                 StringBuilder builder = new StringBuilder();
  •                 for (byte b : digest.digest()) {
  •                         builder.append(Integer.toHexString((b >> 4) & 0xf));
  •                         builder.append(Integer.toHexString(b & 0xf));
  •                 }
  •                 //return builder.toString().toLowerCase(); // 小写
  •                 //return builder.toString().toUpperCase(); // 大写
  •                 // java.lang.String.toUpperCase(Locale locale) 方法将在此字符串中的所有字符为大写的规则给定的Locale.
  •                 //return builder.toString().toUpperCase(Locale.getDefault()); // 大写
  •                 return builder.toString(); 
  •         }

  •         /**
  •         * 16位加密
  •         * @param digest
  •         * @return
  •         */
  •         private static String getEncode16(MessageDigest digest) {
  •                 StringBuilder builder = new StringBuilder();
  •                 for (byte b : digest.digest()) {
  •                         builder.append(Integer.toHexString((b >> 4) & 0xf));
  •                         builder.append(Integer.toHexString(b & 0xf));
  •                 }

  •                 // 16位加密,从第9位到25位  
  •                 //return builder.substring(8, 24).toString().toUpperCase();  
  •                 return builder.substring(8, 24).toString();  
  •         }
  • }
  • 参考:http://jiewushanshan.lofter.com/post/cf538_1d903d
  •               http://blog.csdn.net/lincyang/article/details/5709189

  •     
    [3] 时间戳变换为日期工具apk源码实现
        来源: 互联网  发布时间: 2014-02-18
    时间戳转换为日期工具apk源码实现

    将时间戳转换为日期,如程序中获取到的时间戳为:1377921697453,转换为日期后为:2013年08月23日 12时01分37秒。

    废话不说直接上源码:

    package com.jinhoward.timestamptodate;
    
    import com.jinhoward.timestamptodate.R;
    import android.app.Activity;
    import android.os.Bundle;
    import android.text.Editable;
    import android.util.Log;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.view.inputmethod.InputMethodManager;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.TextView;
    import android.widget.Toast;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    public class TimestampToDateActivity extends Activity {
    	private String TagforCallLogs;
    
    	public void onCreate(Bundle paramBundle) {
    		super.onCreate(paramBundle);
    		setContentView(R.layout.activity_timestamp_to_date);
    		Button changeToDateButton = (Button) findViewById(R.id.changeToDateButton);
    		changeToDateButton.setOnClickListener(new View.OnClickListener() {
    			public void onClick(View paramView) {
    				EditText localEditText = (EditText) TimestampToDateActivity.this
    						.findViewById(R.id.numberEditText);
    				SimpleDateFormat localSimpleDateFormat = new SimpleDateFormat(
    						"yyyy年MM月dd日 HH时mm分ss秒");
    				if (localEditText.getText().toString().equals("")) {
    					Toast.makeText(TimestampToDateActivity.this, "您输入数值为空,请重新输入!",
    							Toast.LENGTH_LONG).show();
    					return;
    				}
    				//点击时间转换按钮后隐藏输入法框
    				InputMethodManager inputMethodManager =(InputMethodManager)TimestampToDateActivity
    						.this.getSystemService(INPUT_METHOD_SERVICE);
    				inputMethodManager.hideSoftInputFromWindow(localEditText.getWindowToken(), 0);
    				
    				String str = localSimpleDateFormat.format(new Date(Long
    						.parseLong(localEditText.getText().toString())));
    				TextView showTimetTextView =(TextView)findViewById(R.id.showTime);
    				showTimetTextView.setText(str);
    				
    //				Log.v("stampToDate", Long.toString(System.currentTimeMillis()));
    			}
    		});
    	}
    }

    xml文件源码:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/screen"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="#ffc1eeee"
        android:orientation="vertical" >
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="5.0dip"
            android:text="时间戳数值:"
            android:textSize="18.0sp"
            android:text />
    
        <EditText
            android:id="@+id/numberEditText"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5.0dip"
            android:focusable="true"
            android:hint="请输入时间戳数值(13位)"
            android:maxLength="13"
            android:inputType="number" />
    
        <TextView
            android:id="@+id/changedTimeIs"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="5.0dip"
            android:text="转换后的日期为:"
            android:textSize="18.0sp"
            android:text />
    
        <TextView
            android:id="@+id/showTime"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="5.0dip"
            android:text=" "
            android:textSize="18.0sp"
            android:text />
    
        <Button
            android:id="@+id/changeToDateButton"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="5.0dip"
            android:text="开始时间戳转换为日期"
            android:textSize="18.0sp"
            android:text />
    
    </LinearLayout>

              



        
    最新技术文章:
    ▪Android开发之登录验证实例教程
    ▪Android开发之注册登录方法示例
    ▪Android获取手机SIM卡运营商信息的方法
    ▪Android实现将已发送的短信写入短信数据库的...
    ▪Android发送短信功能代码
    ▪Android根据电话号码获得联系人头像实例代码
    ▪Android中GPS定位的用法实例
    ▪Android实现退出时关闭所有Activity的方法
    ▪Android实现文件的分割和组装
    ▪Android录音应用实例教程
    ▪Android双击返回键退出程序的实现方法
    ▪Android实现侦听电池状态显示、电量及充电动...
    ▪Android获取当前已连接的wifi信号强度的方法
    ▪Android实现动态显示或隐藏密码输入框的内容
    ▪根据USER-AGENT判断手机类型并跳转到相应的app...
    ▪Android Touch事件分发过程详解
    ▪Android中实现为TextView添加多个可点击的文本
    ▪Android程序设计之AIDL实例详解
    ▪Android显式启动与隐式启动Activity的区别介绍
    ▪Android按钮单击事件的四种常用写法总结
    ▪Android消息处理机制Looper和Handler详解
    ▪Android实现Back功能代码片段总结
    ▪Android实用的代码片段 常用代码总结
    ▪Android实现弹出键盘的方法
    ▪Android中通过view方式获取当前Activity的屏幕截...
    ▪Android提高之自定义Menu(TabMenu)实现方法
    ▪Android提高之多方向抽屉实现方法
    ▪Android提高之MediaPlayer播放网络音频的实现方法...
    java开源软件 iis7站长之家
    ▪Android提高之手游转电视游戏的模拟操控
     


    站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3