‘壹’ android 读写文件需要哪些权限
<!--往sdcard中写入数据的权限 --><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission><!--在sdcard中创建/删除文件的权限 --><uses-permission android:name="android.permission.MOUNT_U
android中的apk必须签名
这种签名不是基于权威证书的,不会决定某个应用允不允许安装,而是一种自签名证书。
重要的是,android系统有的权限是基于签名的。比如:system等级的权限有专门对应的签名,签名不对,权限也就获取不到。默认生成的APK文件是debug签名的。
获取system权限时用到的签名,见:如何使Android应用程序获取系统权限。基于UserID的进程级别的安全机。这种签名不是基于权威证书的,不会决定某个应用允不允许安装,而是一种自签名证书。重要的是,android系统有的权限是基于签名的。
‘贰’ 求问android怎么在代码里获得系统文件的读写权限
本来以为就没有办法在应用程序这一层改系统时间了,后来在网上搜了好久,知道这个目的还是可以达到的。
第一个方法简单点,不过需要在Android系统源码的环境下用make来编译:
1. 在应用程序的AndroidManifest.xml中的manifest节点中加入
android:sharedUserId="android.uid.system"这个属性。
2. 修改Android.mk文件,加入LOCAL_CERTIFICATE := platform这一行
3. 使用mm命令来编译,生成的apk就有修改系统时间的权限了。
第二个办法麻烦点,不过不用开虚拟机跑到源码环境下用make来编译:
1. 同上,加入android:sharedUserId="android.uid.system"这个属性。
2. 使用eclipse编译出apk文件,但是这个apk文件是不能用的。
3. 用压缩软件打开apk文件,删掉META-INF目录下的CERT.SF和CERT.RSA两个文件。
4. 使用目标系统的platform密钥来重新给apk文件签名。这步比较麻烦,
首先找到密钥文件,在我的Android源码目录中的位置
是"build argetproctsecurity",下面的platform.pk8和platform.x509.pem
两个文件。
然后用Android提供的Signapk工具来签名,signapk的源代码是
在"build oolssignapk"下,
用法为"signapk platform.x509.pem platform.pk8 input.apk output.apk",
文件名最好使用绝对路径防止找不到,也可以修改源代码直接使用。
这样最后得到的apk和第一个方法是一样的。
最后解释一下原理,首先加入android:sharedUserId="android.uid.system"这个属性。通过Shared User id,拥有同一个User id的多个APK可以配置成运行在同一个进程中。那么把程序的UID配成android.uid.system,也就是要让程序运行在系统进程中,这样就有权限来修改系统时间了。
只是加入UID还不够,如果这时候安装APK的话发现无法安装,提示签名不符,原因是程序想要运行在系统进程中还要有目标系统的platform
key,就是上面第二个方法提到的platform.pk8和platform.x509.pem两个文件。用这两个key签名后apk才真正可以放入系统进程中。第一个方法中加入LOCAL_CERTIFICATE := platform其实就是用这两个key来签名。这也有一个问题,就是这样生成的程序只有在原始的Android系统或者是自己编译的系统中才可以用,因为这样的系统才可以拿到 platform.pk8和platform.x509.pem两个文件。要是别家公司做的Android上连安装都安装不了。试试原始的Android 中的key来签名,程序在模拟器上运行OK,不过放到G3上安装直接提示"Package ... has no signatures that match those in shared user android.uid.system",这样也是保护了系统的安全。
java代码 1、必须是Android系统开发人员,否则你无法修改init.rc等文件。 2、你的应用程序必须要获得system权限。 在应用层 你要想用代码获得系统文件权限,除非你手机root了 要么你自己坐rom。。。。 自己修改 init,rc
方法/步骤
1
首先找到你要操作的文件夹,这里用一个声卡相关的文件夹做例子。选中文件夹。右击它。选择文件的属性,安全--->高级。
2
更改所有者,如图所示。在输入对象名称那儿,输入你的账户名称,我的是微软账户。输入完之后确定。
3
回到刚才的界面,你会看到所有者已经改变了,变成了你的账号。然后确定退出,回到文件夹。(一定要确定后退出回到文件中,才能进行下一步)
4
再次回到刚才的界面。禁止所有继承。
5
添加用户。输入账号,我输入的是微软账号。输入后确定。
通过第三方软件获得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方法啊。 查看原帖>>
麻烦采纳,谢谢!
用re
先耐心的把这里的帖子看上几页,再多网络网络资料,不要手机一上手就玩这些要root权限的内容,容易出问题,到时候问题越来越多。。。建议至少2周后再做这些事情,对你会很有帮助。 查看原帖>>
对于一般文件来说,是不需要开启administrator账户的,只需要一个简单的办法就OK啦!比如说,对待下面的这种类型的文件夹。
2
我们只需要击右键,选择“管理员取得所有权”即可。
3
对于一些程序文件来说,只需要你击右键,选择“以管理员身份运行”,也是一个非常便捷的获得管理员权限的办法。
END
开启Administrator账户的方法
Windows 7系统中,administrator账户并不是默认开启的,那么就需要我们手动开启,这也不是很难的啦!对计算机图标,击右键,选择管理。
打开界面后,选择本地用户和组,单击用户,选择administrator账户即可。
3
打开,administrator账户之后,按照以下的操作来进行就行了。
4
这样,在开始登陆的界面,即可以出现administrator账户了,选择此账户即可获得管理员最高权限,不过建议一般来说此账户还是不要开启的好,如果此账户受损,再创建帐户很容易失败。还有,在第一次开启此账户时,是不需要密码的。
这个问题其实LBE已经解决了。 1.在2012隐私保护版中,每次运行时请求系统root,创建一个开机启动服务libload.so,专门用于处理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"superuser.active" 数据库无记录,“授权管理”弹出root请求窗口endif修改后的su文件 1if (pid<>"") then "get uid=0 root" 无条件,返回root********************************************** 我反编译b.apk,然后把java应用调用runtime.exec("su")的代码全部改为runtime.exec("sa"), 然后重新打包签名好。安装这个软件。 用RE文件管理器把上面附件的su改名为sa,复制到/system/xbin/sa并改权限rwsx-rsx-r。 以后使用b.apk,获取root权限没有任何提示。 su.zip大小:249.85K 已经过网络安全检测,放心下载 点击下载下载量:133
‘叁’ 安卓开发中,需要创建一个新文件,并读写,要加入什么权限
如果是在手机上新建,需要root权限,手机要先破解。如果不是在手机上操作那不需要权限,直接在电脑上弄好了刷进去就可以了。
1. touch filename 建立一个空文件
2. cat > filename 建立一文件,然后把接下来的键盘输入写入文件,直到按Ctrl+D为止
还有像楼上说的把/dev/null复制过去
是一小段程序代码
读输入流的方法:通过读输入流返回一个String
/**
* 读输入流
*
* @param is
* @return
*/
public static String getStringByInputStream(InputStream is) {
String content = null;
try {
if (is != null) {
byte[] buffer = new byte[is.available()];
ByteArrayOutputStream arrayOutputStream = new ByteArrayOutputStream();
while (true) {
int readLength = is.read(buffer);
if (readLength == -1)
break;
arrayOutputStream.write(buffer, 0, readLength);
}
is.close();
arrayOutputStream.close();
content = new String(arrayOutputStream.toByteArray());
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
content = null;
} finally {
try {
if (is != null)
is.close();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
return content;
}
读assets文件的方法:
public static String readAssets(Context context, String fileName) {
InputStream is = null;
try {
is = context.getAssets().open(fileName);
} catch (IOException e) {
e.printStackTrace();
}
return getStringByInputStream(is);
}
3
读raw文件的方法:
public static String readRaws(Context context, int id) {
InputStream is = context.getResources().openRawResource(id);
return getStringByInputStream(is);
}
明白了,
右击游戏图标-属性-查找目标-右击-新尘巧猜建-文件夹-命名-OK
无法创建新文件夹的问题,一般可能是以下原因引起的 1 权限设置不当 检查相关权限,检查WINDOWS用户是否拥有建立文件的权限,如果没有,请换用管理员登陆,或者使用管理员舔加管理权限。如果是管理员,在gpedit.msc里添加相关权限。 2 磁盘管理错误 如果长时间的使用BT和电驴等派型P2P软件,磁盘缓存设置不当也宽吵可能造成磁盘目录的混乱,从而造成磁盘目录错误,引起目录检索错误,引发问题出现。 3 磁盘控制器错误 一般来说这种错误很罕见,正常情况更新磁盘驱动即可解决问题。也不知道是不是你的软件冲突所致。如果是硬盘上集成的控制器出问题了见最后的回答。 4 易失性数据错误 一般来说是由系统文件的紊乱错误引起的,但是你重新安装过系统,问题也就排除了。 使用优化大师对你的盘进行检测和修复,如果这样还不行的话我就暂时没有办法了. 电脑中毒了。 先在安全模式杀毒再创建文件夹
cmd 回车
d: 回车
md 文件夹名称 回车
问题 表述不清,据猜测,楼主是问每打开一个word文件,都会看到一个新文件自动创建,那是word自动创建的一个临时文件,关闭文档后,这个临时文件会被自动删除掉,通常情况它是隐藏文件,如果这个临时文件没有被删除掉,如果文档出现问题了,可以通过这个临时文件恢复挽救一部分内容。
可以,在选项-工作区-常规里有个CorelDRAW启动,后面有选项.
那要在没有加载之前编辑ISO文件加入的,已经加载了 是没有办法创建,因为光驱格式是只读模式的.
‘肆’ 如何读写Android文件
在android中的文件放在不同位置,它们的读取方式也有一些不同。
本文对android中对资源文件的读取、数据区文件的读取、SD卡文件的读取及RandomAccessFile的方式和方法进行了整理。供参考。
http://www.cnblogs.com/bastard/archive/2013/03/04/2943302.html
‘伍’ android如何读写/data/data文件
读写文件,和java中没有区别的Filefile=newFIle("文件绝对路径");注意这里的文件路径,windows平台下盘符是c:d:e:等android是linux内核,路径是/开头的其它的就是InputStreamoutputStream没什么区别