- 浏览: 246517 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
江恂泽:
楼主 这家伙会把data 拆分开来 转换成day year形 ...
JsonUtil -
mdsp25xhm:
为何没有列表查询功能?
myBatis DAO封装
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import android.app.Activity;
import android.os.Bundle;
public class RootActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
DataInputStream stream;
if(isRooted()){
try {
stream = Terminal("ping -c 2 www.pocketdigi.com");
//其实ping并不需要root权限 ,这里是ping 2次后才停止,所以启动后需要一点时间才会有显示
//你可以自己换成需要root权限的命令试试
String temp;
while((temp=stream.readLine())!=null){
System.out.println(temp);
//循环输出返回值
}
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
public DataInputStream Terminal(String command) throws Exception
{
Process process = Runtime.getRuntime().exec("su");
//执行到这,Superuser会跳出来,选择是否允许获取最高权限
OutputStream outstream = process.getOutputStream();
DataOutputStream DOPS = new DataOutputStream(outstream);
InputStream instream = process.getInputStream();
DataInputStream DIPS = new DataInputStream(instream);
String temp = command + "\n";
//加回车
DOPS.writeBytes(temp);
//执行
DOPS.flush();
//刷新,确保都发送到outputstream
DOPS.writeBytes("exit\n");
//退出
DOPS.flush();
process.waitFor();
return DIPS;
}
public boolean isRooted() {
//检测是否ROOT过
DataInputStream stream;
boolean flag=false;
try {
stream = Terminal("ls /data/");
//目录哪都行,不一定要需要ROOT权限的
if(stream.readLine()!=null)flag=true;
//根据是否有返回来判断是否有root权限
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
return flag;
}
}
import java.io.DataOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import android.app.Activity;
import android.os.Bundle;
public class RootActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
DataInputStream stream;
if(isRooted()){
try {
stream = Terminal("ping -c 2 www.pocketdigi.com");
//其实ping并不需要root权限 ,这里是ping 2次后才停止,所以启动后需要一点时间才会有显示
//你可以自己换成需要root权限的命令试试
String temp;
while((temp=stream.readLine())!=null){
System.out.println(temp);
//循环输出返回值
}
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
public DataInputStream Terminal(String command) throws Exception
{
Process process = Runtime.getRuntime().exec("su");
//执行到这,Superuser会跳出来,选择是否允许获取最高权限
OutputStream outstream = process.getOutputStream();
DataOutputStream DOPS = new DataOutputStream(outstream);
InputStream instream = process.getInputStream();
DataInputStream DIPS = new DataInputStream(instream);
String temp = command + "\n";
//加回车
DOPS.writeBytes(temp);
//执行
DOPS.flush();
//刷新,确保都发送到outputstream
DOPS.writeBytes("exit\n");
//退出
DOPS.flush();
process.waitFor();
return DIPS;
}
public boolean isRooted() {
//检测是否ROOT过
DataInputStream stream;
boolean flag=false;
try {
stream = Terminal("ls /data/");
//目录哪都行,不一定要需要ROOT权限的
if(stream.readLine()!=null)flag=true;
//根据是否有返回来判断是否有root权限
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
return flag;
}
}
发表评论
-
IMF简介-2
2013-07-09 17:56 896InputManager 由UI控件(View,TextVie ... -
IMF简介-1
2013-07-09 17:51 818Input Method Framework 目录 ... -
输入法 总结-3
2013-07-08 15:02 852public class MainActivity exten ... -
输入法 总结-4
2013-07-04 17:29 938public class InputActivity exte ... -
输入法 总结-3
2013-07-04 17:28 861public class InputApplication e ... -
输入法 总结-2
2013-07-04 17:23 777openwnn_pref_ja.xml <?xml v ... -
输入法 总结-2
2013-07-04 17:21 13openwnn_pref_ja.xml <?xml v ... -
输入法 总结-1
2013-07-04 17:19 798<application android ... -
Android快捷键
2013-03-15 14:39 829Home键(小房子键) 在 ... -
如何通过wifi调试android程序
2013-02-27 15:48 770android手机居然可以通过wifi进行程序的调试,太好了, ... -
Please ensure that adb is correctly located at 'D:\android-sdk-windows\platform-
2013-02-27 14:27 1660adt 出现ADB server didn't ACK, fa ... -
Android AsyncTask
2013-02-19 09:35 1122AsyncTask是抽象类,子类 ... -
Android ViewPager 左右滑动2-1
2013-01-29 10:12 1496public class PagerActivity exte ... -
Android ViewPager 左右滑动-3
2013-01-29 10:10 1102<?xml version="1.0" ... -
Android ViewPager 左右滑动-2
2013-01-29 10:10 1470/*** * 选中效果 */ pu ... -
Android ViewPager 左右滑动-1
2013-01-29 10:09 1384Store extends ActivityGroup imp ... -
Android 下载
2013-01-27 00:59 914下载apk程序代码 protected File downLo ... -
Android SDCard操作-3
2013-01-26 18:31 886public static Intent getVid ... -
Android SDCard操作-2
2013-01-26 18:30 1113/** * 判断该应用在手机中的安装情况 ... -
Android SDCard操作-1
2013-01-26 18:27 1050private static int INSTALLED = ...
相关推荐
- **如何检测设备是否已被root**:可以通过检查某些root标志文件(如`/system/app/Superuser.apk`)是否存在来判断设备是否已获取root权限。 - **root权限的风险**:虽然root权限可以带来更多的自由度和功能,但同时...
标题提到的"android手机root检测"是指检查Android设备是否已经获取了root权限的过程。这个过程对于应用开发者和安全专家来说尤其重要,因为他们需要确保其应用不会在被root的设备上运行,因为这可能会导致数据泄露或...
例如,Android SDK提供了一些系统权限检查API,如`android.os.Process.isRootUser()`,可以用来判断当前进程是否具有root权限。此外,还有一些第三方库和应用可以辅助检测,如Rootbeer、Root Checker等。 为了保护...
在Android系统中,ROOT权限是最高级别的管理员权限,允许用户访问和修改系统核心文件,执行对设备有深度控制的操作。通常,这些操作包括但不限于安装自定义固件、卸载预装应用、修改系统设置以及优化性能等。然而,...
在Android开发中,有时我们需要检测用户的设备是否已经获得了Root权限,因为这可能影响到应用程序的安全性和功能表现。本文将详细探讨如何通过编程实现这一功能,主要基于提供的"Android例子源码不弹框手机是否Root...
adb 的root 权限是在system/core/adb/adb.c 中控制。主要根据ro.secure 以及 ro.debuggable 等system property 来控制...2. 修改adb.c 中开启root 权限的判断逻辑。 下面详细说明这两种修改方式: 第一种方法. 修改syst
判断手机是否具有root权限工具类的标准代码
Android可以直接运行一个底层命令,来判断是否root,但是这会带来一个问题,每次判断是否root都会弹出一个root请求框。这是十分不友好的一种交互方式,而且,用户如果选择取消,有部分手机是判断为非root的。这种方式...
在Android开发中,"Root"一词通常指的是设备获得了超级用户权限,即root权限。Rooting是Android系统中的一种操作,允许用户获取对设备的完全访问权限,以便自定义、优化或安装不受官方支持的应用程序。然而,对于...
在 Android 4.4 ~ Android 5.1.1 版本之间,需要判断权限的类 AppOpsManager 是 API19 版本添加的,所以 Android 4.4 之前的版本(不包括 4.4)就不用去判断了,直接调用 WindowManager 的 addView 方法弹出即可。...
5. android.permission.ACCESS_NETWORK_STATE:应用需要此权限来获取网络连接状态,如Wi-Fi、移动数据等,以判断是否可以进行网络操作。 6. android.permission.ACCESS_SURFACE_FLINGER:提供对SurfaceFlinger底层...
在没有root权限的情况下,我们不能直接为普通应用授予这个权限。 Android系统通过`pm`命令行工具来管理包,包括安装APK。在源码中,`/frameworks/base/cmds/pm/src/com/android/commands/pm/Pm.java`文件包含了`pm`...
此外,如果设备已经获取了root权限,则通常可以直接访问这些数据而无需显式声明这些权限。 #### 实现逻辑 接下来是具体的实现逻辑。主要分为以下几个步骤: 1. **获取系统版本**:通过`android.os.Build.VERSION....
然而,通过root权限,我们可以绕过这一限制,使用底层命令来执行安装操作。 在Demo中,引入了`TrineaAndroidCommon`库,这是一个开源的Android工具类库,包含了一些常用的Android开发辅助函数,可能包括了与系统...
Root权限是Android系统中的最高权限,它允许用户访问并控制系统的每一个角落。一旦设备被Root,用户可以删除预装应用、调整系统设置、安装需要超级用户权限的应用,如Xposed框架,以及进行性能优化等。然而,Root也...
Android可以直接运行一个底层命令,来判断是否root,但是这会带来一个问题,每次判断是否root都会弹出一个root请求框。这是十分不友好的一种交互方式,而且,用户如果选择取消,有部分手机是判断为非root的。这种方式...
`root tools` 是一个针对Android系统开发的工具集,主要功能是提供对Android设备的root权限管理。这个源码分析将深入探讨其内部实现,帮助开发者理解如何在Android平台上进行root操作以及相关工具的开发。 首先,`...
- 已root的设备往往会有像SuperSU、Magisk等管理root权限的应用。通过查询系统中是否存在这些应用或者对应的守护进程(如su、magiskd等),可以推断设备是否被root。 4. **利用系统权限检测库**: - 开发者可以...
在本"android静默安装小demo"中,我们将探讨如何在具有root权限的设备上实现这一功能。 首先,我们需要理解Android系统的权限管理。在非root环境下,普通应用通常没有权限执行静默安装,因为这是系统级别的操作。...