如何看待 MIUI 工程師袁軍對 QQ 後台機制的評論?

博主主頁上已經找不到該條微博:Sina Visitor System

文中所說「QQ瀏覽器會監控系統任何地方拷貝數據的行為,還會彈出懸浮窗」

本人所用就是qq瀏覽器,並無感覺啊。

關於手機QQ部分,因為用的是國際版,沒有感覺殺不掉(反而有時自己掛掉了,不知道是不是手機系統的問題)


現在知乎連就事論事說話都這麼難了嗎?

看不出有任何撕逼的跡象,人家程序員吐槽完全合理。

你一個應用鑽系統空子在用戶不知情的情況下干這麼多事,禁止還禁止不掉,這叫體驗好嗎?

用戶連選擇的餘地都沒有,叫體驗好嗎?

看到說「這些功能正是我想要的」的人我真是不知道該說什麼。我想用中文我會說「該」,用英文我會說「You fucking deserve it。

事實是啊,你想不想要,都得要。


「我都是為了你好」 &<- 滾。

「MIUI 屁股也不幹凈」 &<- 干不幹凈你再開另外一個話題專門討論。


說個我所了解的事,對html5開發者來說,QQ瀏覽器就是坑,號稱自主研發的X5內核,實際是基於幾年前的webkit改的,好多webkit的bug都在,關鍵還用假的UA版本號,偽裝成新的webkit版本,我真是吐血!之前遇到一個頁面上的bug,發現是webkit舊版本一個bug導致的,偏偏就是qq瀏覽器,是高版webkit版本號,卻帶著舊版的問題。

既然是瀏覽器,就應該專註於瀏覽器本身的核心功能,而不是用著幾年前的webkit,卻把重心放在別的地方。


當我知道可以開啟攝像頭前台留一個像素來偷拍用戶之後,我就覺得,1PX真是厲害。


以前就知道 Android 有個 ClipboardManager 的 API,但一直沒用過。
剛寫了個 Demo,後台啟動 Service 監聽 Clipboard 變化:

final ClipboardManager cbm = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
cbm.addPrimaryClipChangedListener(new ClipboardManager.OnPrimaryClipChangedListener(){
@Override
public void onPrimaryClipChanged(){
ClipData cd = cbm.getPrimaryClip();
for(int i = 0; cd != null i &< cd.getItemCount(); i++){ Item item = cd.getItemAt(i); CharSequence text = item.coerceToText(CBMService.this); Toast.makeText(getApplicationContext(), text, Toast.LENGTH_LONG).show(); } } });

API 11 以後這個 API 的存取方法命名中添加了 Primary 關鍵字,原本以為是出於安全考慮只允許訪問當前 APP 的 Clipboard,就跟 SharedPreferences 類似。
但親測發現,這個其實是針對全局 ClipBoard 的。也就是說,在任何應用中執行複製/剪切操作,都能輕易被監聽到!
但令人意外的是:這麼敏感的 API 居然連許可權都不用聲明!

/* 更新1 */
有人說這個 ClipboardManager 本來就是用來在應用間共享數據的,是否泄露隱私需要開發者去考慮。
但示,同樣用於應用間共享數據的 ContentProvider 在許可權控制方面就比較嚴格。所以,個人覺得系統在提供 API 時也應當考慮安全性,進行適當約束。因為你不能保證每個開發者都沒有不良動機。(PS:這就跟「法治」和「人治」是一個道理)

/* 更新2 */
有人提到 iOS 中訪問剪貼板也不用聲明許可權
不錯,iOS 裡面使用 UIPasteboard 確實也不需要聲明許可權,而且也能通過 UIPasteboardChangedNotification 和 UIPasteboardRemovedNotification 監聽剪貼板(這裡就不再貼代碼了)。
但可喜的是 iOS 對後台服務限制異常嚴格,不像 Android 可以輕而易舉、偷偷摸摸開個 Service 在後台,時刻監聽、實時彈窗,嚴重影響用戶體驗。

/* 更新3 */
感謝 @嘎巴貼 補充,iOS 7 開始,只有相同 ID Prefix 的 APP 才能共享 UIPasteboard

Apps sharing the same Team ID prefix are eligible for UIPasteboard sharing in iOS 7. Here, just having the same Team ID prefix for more than two of your apps automatically enables UIPasteboard sharing among them.

也就是說,只有同一個開發團隊的 APP 之間才能共享剪貼板數據。詳見 Technical Note TN2311: Managing Multiple App ID Prefixes
如果確實有在不同 ID Prefix 的 APP 之間共享數據的需求,別老盯著 UIPasteboard,可以試試 URL Scheme(這個 Android 也支持),當然數據得加密。


安卓三大毒瘤,騰訊,阿里,百度。
尤其是阿里,打開一個支付寶,保證全家駐後台。


iOS開發者表示震精


不要把所有問題的討論都當作撕逼。

嚴格說來,ROM 產商與手機產商跟大多數互聯網產商的利益是敵對的,所以會導致大多數互聯網產商都要自己做 ROM。他們在根本利益上存在衝突,要想調和很困難。因為對 ROM 來說,你要想做得省電流暢,就要儘可能減少後台,限制 app 在後台的行為與許可權,但作為互聯網產商,讓自己的產品無孔不入無處不在永遠常駐監控一切才是利益的根本,而這一點利益與 ROM 產商根本衝突。


當然,完全禁絕所有後台並不現實,總會有一些雲服務的,所以 ROM 產商就選擇只允許自己的應用常駐後台。這並非僅僅是利益考慮,而在於在測試 ROM 時你肯定只考慮配合自家應用的情況下的待機能力與功耗。你進行 ROM 功耗測試通常也是不會包含第三方應用的。——從 MIUI 的角度,或者從任何一個 ROM 製作者的角度,都會對那些常駐後台動不動就跳出來的應用恨之入骨,老羅其實也發微薄罵過,他們的立場很清晰,很正當,並無問題。


--

至於 QQ 瀏覽器,在這個問題上其實略有些委屈。這個監控複製的功能是怎麼來的呢?我舉個例子:其實大家知道,微信裡面是可能發送鏈接的,用戶點擊之後預設將在微信內部的瀏覽器框架中打開。但這種鏈接被淘寶禁掉了,為了訪問淘寶你只能先複製鏈接,然後打開瀏覽器,然後粘貼鏈接,貌似挺麻煩的樣子對吧?為了使這個流程更流暢一些,現在 QQ 瀏覽器監控複製行為,一旦有複製,判斷這是不是一個網址,如果是網址,則彈出對話框詢問用戶是否用瀏覽器打開。這其實本來是個方便性的功能。我個人覺得這算是相對合理的功能設計。


奈何方便性總是與安全性跟性能相衝突的,監控用戶的複製行為,可能侵犯了用戶隱私。同時,監控剪貼板的行為可能導致該應用不斷的被喚醒,導致該應用後台常駐。——從這個角度來說,這種app在 ROM 製作者看來當然是個非常惡劣的app。(至於 QQ 瀏覽器喚醒時是否會同步喚醒 QQ 通訊客戶端,這一點未作求證,暫不評價)

至於用戶怎麼看這個問題呢?其實我覺得,選擇權應該在用戶,ROM 還是應該提供禁止該特性的功能,讓用戶去選擇是否允許這些應用訪問相關許可權。畢竟其實監控用戶的剪貼板對隱私影響還是不小的,一個應用怎麼殺都殺不掉在用戶來說也會感覺很不愉快。


我覺得:這個問題上 MIUI 跟 QQ 瀏覽器做得都沒什麼大問題,話講清楚就好了,撕逼是完全沒有必要的。


QQ瀏覽器 進入設置 插件管理 點擊 快速搜索 後面的禁用按鈕。 就能禁用這個插件。 剪貼板就不會總是監控了。用過很多很多瀏覽器,現在QQ瀏覽器手機里也裝著。


另一個像素界面蓋在桌面,又不影響用戶在正常使用,這是怎樣做到的呢?


看起來MIUI推出的,類似ios的由小米主宰的,統一推送代發通知的模式……被QQ及很多APP無視了吧……


TMD,老子的手機QQ,每次點退出後不接受消息,過段時間莫名其妙的就能接受消息了。。還能在通知欄看到,點擊該通知就打開QQ前台。。。然後所有的後台都重生。


直接讀取相冊和視頻,上傳到伺服器。。。嗯嗯,只需要一個非常不敏感的許可權:聯網。。。。別怕,這要看程序員的道德底線了。。。。


寫了個長微博解釋,又寫了個demo


BAT系列沒一個讓我覺得不流氓的,g+上已經爆出了微信和支付寶利用靜默下載許可權後台偷偷下載推廣軟體的。。呵呵。。這還叫用戶體驗


看多了這些撕逼,總是感慨iOS是多麼省心


wp或成最大贏家。


Android 生態就是這麼被你們玩壞的
沒規則、無視規則,走偏門左道。
另外,狗咬狗一嘴毛。


更新置後了,不能偏離主題,嗯。
--------------------------------------在那山的那邊海的那邊有一條分界線-------------------------------------

紅米2用戶表示強烈希望QQ微信等常用即時通訊工具都增加前台常駐這個功能!

被紅米專用MIUI6殺的它親爹都不認識了!

這是即時通訊工具,不是微博。我後台之後你殺死微博也好,知乎也好我沒一點意見。

--------------------------------------在那山的那邊海的那邊有一條分界線-------------------------------------

有一樣情況的機友別光評論,點個贊再走啊喂!

更新一下,裝個逼!以前都是見各路大V更新的。沒想到在樓里碰見了 @pansz 么么噠,我如果沒記錯的話打知乎內測我進來的時候就關注你了呢!而且你贊和回答的我基本都看過。

太激動了,果斷取匿了!說我不會用,我可能確實不會用,雖然窮逼當年用U880刷過V4,後來紅米1首發,紅米2首發。我也確實感覺MIUI好用,刷過能刷的大部分ROM,最後都換回了MIUI。

評論的絕逼沒買紅米2,有用過也肯定不超過兩天。可能我是真傻,或者真瞎,嗯,跟緬甸似的。
不過白名單和下滑鎖定真的木有用啊木有用啊木有用啊木有用啊!一直用的開發版,至少在5.2.13版本之前,QQ+微信+QQ音樂三個應用,聽歌的時候切到微信耳機就木有聲音了。最近幾次更新情況有所緩解。紅米2
發布後一個月內你們應該都沒看過MIUI論壇紅米2版塊,都炸了好嗎!全版的傻子和友商水軍在惡意詆毀我米,一定是這樣的。

@李小昌 你才是友商的,你全寢室都是友商的!!! @李楠 請給我打錢。
另外歡迎查看我給小米洗地的歷史回答。
我朋友說:「認真你就輸了」,我覺得這字要白打!


特別討厭那種常駐後台無視用戶,把用戶當白痴的app,像騰訊和淘寶這樣明顯的店大欺客了:老子才不管你體驗怎樣,耗電多少,內存還剩多少,系統是否流暢,不信你不用qq不用微信不用支付寶,不怕你不安裝,反正我就是要常駐後台,就是要掌控全局。老子就是這麼流氓,愛用用不用就滾。
what the fuck!


只要用系統的強行停止功能就可以把任何app徹底乾死啊,絕不複發喲。

But 那個介面普通app不能調用,有root許可權也不行,必須有系統簽名才能調用 (所以所有第三方的殺進程app根本殺不死,殺掉之後人家馬上原地復活)。

但miui完全可以做一個利用此介面的系統級app,殺起流氓app來那就娃哈哈了,可以參考cm裡面,開發者設置裡面有一個選項是"開發快捷方式",打開之後在最近應用列表裡就可以直接將某一個app"強行停止"。


推薦閱讀:

如何看待雷軍榮列 2016 年中國第六大富豪?
魅藍note6好還是小米5x?
小米產品(含米家)水平具體如何?
你的小米怎麼樣?
小米會成為一個偉大的公司嗎?

TAG:騰訊QQ | 小米科技 | 米柚MIUI | Android | Android流氓應用 |