求问android怎么在代码里获得系统文件的读写权限

求问android怎么在代码里获得系统文件的读写权限,第1张

求问android怎么在代码里获得系统文件的读写权限

本来以为就没有办法在应用程序这一层改系统时间了,后来在网上搜了好久,知道这个目的还是可以达到的。

第一个方法简单点,不过需要在Android系统源码的环境下用make来编译:

1 在应用程序的AndroidManifestxml中的manifest节点中加入

android:sharedUserId="androiduidsystem"这个属性。

2 修改Androidmk文件,加入LOCAL_CERTIFICATE := platform这一行

3 使用mm命令来编译,生成的apk就有修改系统时间的权限了。

第二个办法麻烦点,不过不用开虚拟机跑到源码环境下用make来编译:

1 同上,加入android:sharedUserId="androiduidsystem"这个属性。

2 使用eclipse编译出apk文件,但是这个apk文件是不能用的。

3 用压缩软件打开apk文件,删掉META-INF目录下的CERTSF和CERTRSA两个文件。

4 使用目标系统的platform密钥来重新给apk文件签名。这步比较麻烦,

首先找到密钥文件,在我的Android源码目录中的位置

是"build argetproductsecurity",下面的platformpk8和platformx509pem

两个文件。

然后用Android提供的Signapk工具来签名,signapk的源代码是

在"build oolssignapk"下,

用法为"signapk platformx509pem platformpk8 inputapk outputapk",

文件名最好使用绝对路径防止找不到,也可以修改源代码直接使用。

这样最后得到的apk和第一个方法是一样的。

最后解释一下原理,首先加入android:sharedUserId="androiduidsystem"这个属性。通过Shared User id,拥有同一个User id的多个APK可以配置成运行在同一个进程中。那么把程序的UID配成androiduidsystem,也就是要让程序运行在系统进程中,这样就有权限来修改系统时间了。

只是加入UID还不够,如果这时候安装APK的话发现无法安装,提示签名不符,原因是程序想要运行在系统进程中还要有目标系统的platform

key,就是上面第二个方法提到的platformpk8和platformx509pem两个文件。用这两个key签名后apk才真正可以放入系统进程中。第一个方法中加入LOCAL_CERTIFICATE := platform其实就是用这两个key来签名。这也有一个问题,就是这样生成的程序只有在原始的Android系统或者是自己编译的系统中才可以用,因为这样的系统才可以拿到 platformpk8和platformx509pem两个文件。要是别家公司做的Android上连安装都安装不了。试试原始的Android 中的key来签名,程序在模拟器上运行OK,不过放到G3上安装直接提示"Package has no signatures that match those in shared user androiduidsystem",这样也是保护了系统的安全。

android怎么在代码里获得系统文件的读写权限

Java代码 1、必须是Android系统开发人员,否则你无法修改initrc等文件。 2、你的应用程序必须要获得system权限。 在应用层 你要想用代码获得系统文件权限,除非你手机root了 要么你自己坐rom。。。。 自己修改 init,rc

win10怎么获得修改系统文件的权限

方法/步骤

1

首先找到你要 *** 作的文件夹,这里用一个声卡相关的文件夹做例子。选中文件夹。右击它。选择文件的属性,安全--->高级。

2

更改所有者,如图所示。在输入对象名称那儿,输入你的账户名称,我的是微软账户。输入完之后确定。

3

回到刚才的界面,你会看到所有者已经改变了,变成了你的账号。然后确定退出,回到文件夹。(一定要确定后退出回到文件中,才能进行下一步)

4

再次回到刚才的界面。禁止所有继承。

5

添加用户。输入账号,我输入的是微软账号。输入后确定。

手机获得root 权限 怎么找到系统文件

通过第三方软件获得Root权限,可以访问和修改手机 *** 作系统里几乎所有的文件,但这样 *** 作有可能影响手机的稳定性,出现死机、重启等人为性故障。

另外获取权限后一般对存储器和CPU等主板上主要部件引起不良。Root属于修改 *** 作系统软件,按照条例不属于包修范围。为了提升顾客满意度,对Root顾客提供免费升级固件服务,如果Root已影响到手机硬件需要更换主板,则需要收取主板费用。

若您的机器Root后需将机器恢复到原来的系统版本,请将机器送到服务中心,由售后工程师帮助检查处理。自行将设备恢复出厂设置是无法取消Root权限的。

求问如何恢复系统文件的默认权限?

对于已经获取所有权限的文件,建议大家还是恢复到原来的状态。今天就跟大家分享一下如何恢复系统文件的默认权限,Windows 7和Windows 8系统都是一样的 *** 作步骤。这里以平时最常修改的hosts文件为例,下图显示已获取hosts文件所有权限。已获得所有权限的hosts文件恢复权限有点类似于于逆向 *** 作,首先点选Administrators组(上图蓝色条),然后点击下方的“高级”按钮,切换到“所有者”标签。高级安全设置-所有者在上面的窗口中,点击“编辑”按钮打开新窗口来更改所有者。编辑所有者到这一步,你会发现可更改的所有者并没有当初替换时的TrustedInstaller,怎么办?别急,点击“其他用户或组”来添加它。在新开的窗口里,输入:NT SERVICE\TrustedInstaller,注意前面的NT SERVICE一定要加上,否则系统不认。添加TrustedInstaller用户完成后点击确定回到上一窗口,此时会看到TrustedInstaller用户出现了,接下去就是选择它,然后一路确定退出各个窗口。文件所有权恢复到默认状态

如何用代码读取查看文件的读写权限???

File类里面就有canRead,canWrite,canExecute方法啊。 查看原帖>>

麻烦采纳,谢谢!

获得root权限后怎么样删除系统文件啊?

用re

新手求助,获得TOOR权限后,怎么替换系统文件呀!

先耐心的把这里的帖子看上几页,再多百度百度资料,不要手机一上手就玩这些要root权限的内容,容易出问题,到时候问题越来越多。。。建议至少2周后再做这些事情,对你会很有帮助。 查看原帖>>

iMac win7下怎么获得权限能读写Mac的文件

对于一般文件来说,是不需要开启administrator账户的,只需要一个简单的办法就OK啦!比如说,对待下面的这种类型的文件夹。

2

我们只需要击右键,选择“管理员取得所有权”即可。

3

对于一些程序文件来说,只需要你击右键,选择“以管理员身份运行”,也是一个非常便捷的获得管理员权限的办法。

END

开启Administrator账户的方法

Windows 7系统中,administrator账户并不是默认开启的,那么就需要我们手动开启,这也不是很难的啦!对计算机图标,击右键,选择管理。

打开界面后,选择本地用户和组,单击用户,选择administrator账户即可。

3

打开,administrator账户之后,按照以下的 *** 作来进行就行了。

4

这样,在开始登陆的界面,即可以出现administrator账户了,选择此账户即可获得管理员最高权限,不过建议一般来说此账户还是不要开启的好,如果此账户受损,再创建帐户很容易失败。还有,在第一次开启此账户时,是不需要密码的。

android怎么获取文件夹权限代码

这个问题其实LBE已经解决了。 1在2012隐私保护版中,每次运行时请求系统root,创建一个开机启动服务libloadso,专门用于处理lbe自身的root请求。 2在2013免root版中,首次运行时自动获取系统root,并把破解过的su文件复制到/system/xbin/sv ,然后给6755的权限,专门用于处理lbe自身的root请求。 上述两种方案,均为程序自带root管理,用于解决其自身root请求。 以下代码即为方案2的原理,附件中为修改过的su文件。 安卓的su文件,基本原理为 1234567if (pid=DB(Allow)) then "get uid=0 root" 白名单,程序获取rootelseif (pid=DB(Disable)) Return 黑名单,返回空else View"superuseractive" 数据库无记录,“授权管理”d出root请求窗口endif修改后的su文件 1if (pid<>"") then "get uid=0 root" 无条件,返回root 我反编译bapk,然后把java应用调用runtimeexec("su")的代码全部改为runtimeexec("sa"), 然后重新打包签名好。安装这个软件。 用RE文件管理器把上面附件的su改名为sa,复制到/system/xbin/sa并改权限rwsx-rsx-r。 以后使用bapk,获取root权限没有任何提示。 suzip大小:24985K 已经过百度安全检测,放心下载 点击下载下载量:133

只要你Run As Android Application 过,到工作目录的bin文件夹下就能找到与项目同名的apk文件

A选中项目,右键=》Andoid Tools=》Export Unsigned Application Package,直接保存就行,这是未签名的。

或者

B选中项目,右键=》Andoid Tools=》Export Signed Application Package,后面一步步的去做,这是签过名的。

在eclipse工程目录下建立一个jni的文件夹

在jni文件夹中建立Androidmk和Applicationmk文件

Androidmk文件:

Android提供的一种makefile文件,用来指定诸如编译生成so库名、引用的头文件目录、需要编译的c/cpp文件和a静态库文件等。详见附件中的Androidmk。

Applicationmk文件:

定义了项目的一些细节,比如APP_ABI := x86(编译X86平台库)、APP_PLATFORM := android-9(使用android-9以上的平台库)。

NDK 编译和使用静态库、动态库

情况一:编译静态库

情况二:编译动态库

情况三:编译动态库+静态库

情况四:已有第三方静态库(动态库),编译静态库(动态库)

默认所有代码和文件在$project/jni下,否则特殊说明。

情况一:编译静态库

文件Androidmk:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := hello-jni

LOCAL_SRC_FILES := hello-jnic

include $(BUILD_STATIC_LIBRARY)

文件Applicationmk:

APP_MODULES :=hello-jni

情况二:编译动态库

文件Androidmk:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := hello-jni

LOCAL_SRC_FILES := hello-jnic

include $(BUILD_SHARED_LIBRARY)

情况三:编译动态库+静态库

文件Androidmk:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := mylib_static

LOCAL_SRC_FILES := srcc

include $(BUILD_STATIC_LIBRARY)

include $(CLEAR_VARS)

LOCAL_MODULE := mylib_shared

LOCAL_SRC_FILES := src2c

LOCAL_STATIC_LIBRARIES := mylib_static

include $(BUILD_SHARED_LIBRARY)

情况四:已有第三方静态库(动态库),编译静态库(动态库)

文件Androidmk:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := thirdlib1 # name it whatever

LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libthird1a # or $(so_path)/libthird1so

#LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include

include $(PREBUILT_STATIC_LIBRARY) #or PREBUILT_SHARED_LIBRARY

include $(CLEAR_VARS)

LOCAL_MODULE := mylib_use_thirdlib

LOCAL_SRC_FILES := srcc

LOCAL_STATIC_LIBRARIES := thirdlib1 #or LOCAL_SHARED_LIBRARY

include $(BUILD_SHARED_LIBRARY) #如果编译静态库,需要Applicationmk

用cd命令移至jni目录,运行/mnt/500G/public/NDK/android-ndk-r7b/ndk-build命令,这时命令行中可能会出现编译错误,比如头文件找不到,函数找不到等等,细心找找就能改掉。

编译成功后,在工程目录下libs/x86中就会生成你想要的so库。

以上就是关于求问android怎么在代码里获得系统文件的读写权限全部的内容,包括:求问android怎么在代码里获得系统文件的读写权限、在Eclipse中怎样将Android程序编译成apk文件、android已有动态库怎么编译静态库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9696792.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存