当前位置:  编程技术>移动开发
本页文章导读:
    ▪套在 360 暗盒外面的黑盒子:你被技术型枪稿吓到了么        套在 360 黑匣子外面的黑盒子:你被技术型枪稿吓到了么? 这几天业界最引人注目的新闻无疑是《每日经济新闻》刊发的《360 黑匣子》,在这篇长达 24128 字的“调查性报道”中,匿名记者.........
    ▪ 侧边栏成效        侧边栏效果   使用横向滚动栏HorizontalScrollView。利用加载一个透明的View占位置,然后使用scrollView.smoothScrollTo(left, 0);来滚动,监听手势动作。   获取水平滚动栏直接子View LinearLayout parent=(Lin.........
    ▪ 怎么生成Oracle AWR报告 AWR报告的产生方法如上       如何生成Oracle AWR报告 AWR报告的产生方法如下: 2010-05-10 11:13 如何生成Oracle AWR报告 AWR报告的产生方法如下:   1,登陆Oracle数据库:     sqlplus / as sysdba     2, 在sqlplus中,以sys用户运.........

[1]套在 360 暗盒外面的黑盒子:你被技术型枪稿吓到了么
    来源: 互联网  发布时间: 2014-02-18
套在 360 黑匣子外面的黑盒子:你被技术型枪稿吓到了么?

这几天业界最引人注目的新闻无疑是《每日经济新闻》刊发的《360 黑匣子》,在这篇长达 24128 字的“调查性报道”中,匿名记者“秦俑”为大家展示了一个为了自己的商业利益,罔顾用户的安全和权益的几乎无恶不作的 360 的形象。

但是在这场声势浩大的批判狂潮中,仍然不乏一些人保持了理智和冷静。纯银(@纯银V)在微博上表示:

有两件“政治不正确”的事情,我跟主流舆论有些分歧:1、我不认同抄袭扼杀(非游戏类的互联网产品)的创新,扼杀创新的只是“创新低能”而已。2、我对 360 的产品体验始终有一分产品经理的敬意。

另外又有某人表示:

年度最差文章備選之一,沒有足夠的調查和證據,沒有嚴密的論證,只有『某』,只有第三方的說法,記者的匿名報導是對新聞真實和尊嚴的最大傷害,真是有夠諷刺。

曾经任职新浪、现在作为约瑟网络有限公司产品总监的资深产品经理吴伟(@何必PM2_5)也在文章中表达了自己的看法:

如果是客观的讨论,指出错误和不足以期改进,这是学术行为;但是要用耸人听闻的词汇,颇具煽动性的口吻影响用户的决策,那就只能认为是一种竞争手段了。

作者授权刊载,TECH2IPO 对原文有删改。

前两天,我的一位朋友丢给我一个连接,然后飞快的说:

矮马!赶紧看看这篇文章!!吓死我了!以后再也不敢用 360浏览器了!!隐私啊!!我的隐私啊!!你说,我换什么浏览器好?啊?要不就猎豹吧?猎豹挺好的吧?!买票还能快点儿!恩恩!就换猎豹了!!

然后,他!就!走!了!瞬间我心中万兽奔腾啊,尼玛这是来跟我探讨浏览器的事儿么?不是你练口才准备给凉茶播广告吧?好歹你喘口气让我说句话啊。

于是我打开了朋友丢给我的链接,这一看不得了,怪不得能把我朋友吓成这样,图文并茂数据丰富,堪称高级黑的典范,不仅对于普通用户杀伤力极大,就是对于从业人员来说要敬畏三分,稍有反对意见,弄不好就要落个“不懂装懂”的悲惨下场。

但是,作为一名产品经理,不懂装懂是我的日常工作;把内行的话翻译给外行听更是我的职业素养。今天就发挥一下我的长项,把这篇非常专业的枪稿给大家解读解读(以下就把《360 黑匣子》这篇报道简称为报道吧)。

为什么说这是一篇枪稿?

这篇报道的倾向性太过明显,在语言上喜欢使用“癌细胞”、“毒瘤”、“切除”这样感情色彩强烈的词汇,恨不得生啖汝肉笑谈渴饮。

如果这是在微博上的一场骂战倒也痛快;偏偏是刊登在标榜中立公正的纸媒上!《每经》的编辑们真的是当新闻稿件审的么?还是当卖出去三个整版广告所以随便写啊?

既然你一口气采访了三个周鸿祎的敌人,好歹也要采访几个周鸿祎的朋友吧,所谓兼听则明;就算周鸿祎把互联网业得罪光了,一个朋友没有,至少也可以采访一下周鸿祎本人吧。

这么一边儿倒的采访我倒是在新闻联播里经常见。

360泄漏隐私是真老虎还是纸老虎?

这篇报道最大的问题是把可能发生的事情当做已经发生的事情来吓唬用户。

我们就用报道里打的那个比方解释一下:360 就像小区保安,用户就像小区业主,保安以“保护业主安全”为名拿到了业主家的钥匙。这的确是个安全隐患,保安可能会趁业主不在家偷偷溜进屋干坏事。但这只能说保安“有能力”干坏事,不能证明保安真的就干了坏事,更不能号召业主一起打死这个保安。

报道说 360 浏览器秘密的、未经用户允许的情况下向服务器传递数据,甚至下载dll文件。这只能证明 360 确实有能力泄露用户隐私;而 360 是不是真的泄露了用户隐私,那要看他究竟传了什么数据上来,但文章自己也承认“没有人知道答案”。

再退一步讲,360 即使上传了用户的隐私,他究竟是怎样使用这些数据的也是我们要考察的。(注:是否得到用户许可,也是另一个值得关注的)

百度、Google 也会记录用户的搜索习惯,以便能提供更好的搜索结果;QQ 也会保存用户的聊天记录乃至用户关系,否则“圈子”这个神奇的产品是怎么出来的呢?淘宝会记住用户的每一笔消费,到年底的时候还会告诉你比别人多花了多少钱。

对于互联网公司来说,用户个人资料收集的边界在哪里,本来就是存在争议的伦理问题:做好了可以改善服务质量,稍不留神就侵犯了隐私。

如果是客观的讨论,指出错误和不足以期改进,这是学术行为;但用耸人听闻的词汇,聚集一些片面的内容,作为一个知名媒体,这一做法值得商榷。

编者:相比两万多字的长文,这篇不到二千字的短文在证据和逻辑方面无疑存在着一些细节上的缺陷,我们能够质疑每经在这篇报道上的专业性和新闻态度,也能够对其中的疑点提出质疑,但是这究竟是否确定为一篇枪稿以及笼罩着360的安全疑云,依旧是一个无法得到肯定答案的谜题。

更值得我们思考的是,为什么会出现这样水准的报道,以及事实的最终真相究竟如何?这样的探究或许还会一直进行下去。


    
[2] 侧边栏成效
    来源: 互联网  发布时间: 2014-02-18
侧边栏效果



 

 使用横向滚动栏HorizontalScrollView。利用加载一个透明的View占位置,然后使用scrollView.smoothScrollTo(left, 0);来滚动,监听手势动作。

 

获取水平滚动栏直接子View

LinearLayout parent=(LinearLayout) getChildAt(0);
        parent.addView(children[0], 410, 880);
        parent.addView(children[1], 536, 880);

 

 

一、MainActivity布局文件

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_margin="2px"
    android:background="#00ffffff"
    android:padding="0px" >
<LinearLayout 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical">
    <RelativeLayout
        android:id="@+id/menu"
        android:layout_width="fill_parent"
        android:background="@drawable/desktop_list_item"
        android:layout_height="wrap_content" >

        <ImageView
            android:id="@+id/head"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:scaleType="fitStart"
            android:src="/blog_article/@drawable/acount_head_photo/index.html" />

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/head"
            android:layout_marginLeft="10dip"
            android:layout_toRightOf="@+id/head"
            android:text="沈阳师范大学"
            android:textColor="@color/white"
            android:textSize="17dip" />
    </RelativeLayout>

    <ListView
        android:id="@+id/HomeListView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:cacheColorHint="@android:color/transparent"
        android:divider="#000" />
</LinearLayout>
    <grimbo.android.demo.slidingmenu.MyHorizontalScrollView
        android:id="@+id/myScrollView"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_margin="0px"
        android:background="#00ffffff"
        android:fadingEdge="none"
        android:fadingEdgeLength="0px"
        android:padding="0px"
         >

        <LinearLayout
            android:id="@+id/top"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_margin="0px"
            android:background="#00ffffff"
            android:orientation="horizontal"
            android:padding="0px" >
        </LinearLayout>
    </grimbo.android.demo.slidingmenu.MyHorizontalScrollView>

</FrameLayout>

 二、监听手势

 

 

public class MyGestureDetector extends SimpleOnGestureListener {
		//滑动
		@Override
		   public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY)
	       {
	           try
	           {
	               float touchLength = Math.abs(e1.getY() - e2.getY());

	               System.out.println("touchLength="+touchLength);
	               if (touchLength > SWIPE_MAX_OFF_PATH)
	                   return false;
//	               从右向左滑动
	               if (e1.getX() - e2.getX() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY)
	               {
	            	   System.out.println("SSSSSSSSSSSleftS");
	            	   int menuWidth = menu.getMeasuredWidth();
						menu.setVisibility(View.VISIBLE);
						int left = menuWidth;
						scrollView.smoothScrollTo(left, 0);
	               }
	               else if (e2.getX() - e1.getX() > SWIPE_MIN_DISTANCE && Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY)
	               {
	            	  
						
						int left = 0;
	        			scrollView.smoothScrollTo(left, 0);
	        			System.out.println("SSSSSSSSSSSleftS"+left);
	               }
	           }
	           catch (Exception e)
	           {
	               Log.e("detector", "excetpion:" + e.getMessage());
	           }
	           return false;
	       }
	}
	  @Override
	   public boolean onTouchEvent(MotionEvent event)
	   {
	       if (gestureDetector.onTouchEvent(event))
	           return true;
	       else
	           return false;
	   }

 三、侧边栏布局文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:id="@+id/app" android:layout_width="1dp" android:layout_height="1dp"
	android:orientation="vertical" android:background="#ffffffff"
	android:padding="2px" android:layout_margin="2px">
	<LinearLayout android:id="@+id/tabBar"
		android:layout_width="fill_parent" android:layout_height="wrap_content"
		android:orientation="horizontal">
		<ImageView android:id="@+id/BtnSlide" android:layout_width="wrap_content"
			android:layout_height="wrap_content" android:padding="0px"
			android:layout_margin="0px" android:src="/blog_article/@drawable/ic_launcher/index.html" />
		<TextView android:text="&lt;- Press icon"
			android:layout_width="wrap_content" android:layout_height="wrap_content" />
	</LinearLayout>
	<ListView android:id="@+id/list" android:layout_width="match_parent"
		android:layout_height="wrap_content" android:background="#ff00ff00"
		android:cacheColorHint="#ff00ff00">
	</ListView>
</LinearLayout>

 


    
[3] 怎么生成Oracle AWR报告 AWR报告的产生方法如上
    来源: 互联网  发布时间: 2014-02-18
如何生成Oracle AWR报告 AWR报告的产生方法如下:

2010-05-10 11:13 如何生成Oracle AWR报告 AWR报告的产生方法如下:

  1,登陆Oracle数据库:

 

  sqlplus / as sysdba

 

  2, 在sqlplus中,以sys用户运行下面的命令,生成第一份性能数据快照:

 

  exec DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT (flush_level=>'ALL');

 

  3,运行你找到的所有或很多性能较差的应用或SQL,让系统压力始终处于比较高的状态(如CPU或IO的使用),并保持此状态达到半小时到1小时

 

  4,在sqlplus中,以sys用户再次运行下面的命令,生成第二份性能数据快照:

 

  exec DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT (flush_level=>'ALL');

 

  5,在sqlplus中,以sys用户运行下面的命令,以产生性能报告:

 

  @?/rdbms/admin/awrrpt.sql

 

  根据提示,选择上面生成的2个性能数据快照,最后会生成一个最终的AWR性能报告。

 

======================

 

即:

 

首先进入$ORACLE_HOME/rdbms/admin目录,在sqlplus下运行@awrrpt脚本,按照提示一步一步就可以达成,导出的格式有两种,txt格式和html格式。

 


    
最新技术文章:
▪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播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


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

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

浙ICP备11055608号-3