相信很多用Android设备的用户都有这个问题,内部存储太小导致应用只能装那么几个,虽然rom也有提供移动到sd卡的选项,但是仅仅是移动程序文件到sd卡,并不能解决多少问题,多装几个还是会提示内部存储不足,所以这里提供一个更好的解决办法。手动添加A2SD支持,此办法按理说只要你的内核支持init.d脚本的话就能用,是个通用的办法。【刷机和此操作均有风险,作者不对你因为此文进行操作后产生的结果承担任何责任】

      【注意:此文章为本人原创,如有雷同纯属巧合,转载请注明出处和作者!---------------http://www.cnblogs.com/exiahan/p/3300849.html,cnblogs博客,作者:ExiaHan】

       前提,你的内核需要支持init.d脚本,你要有足够大的sd卡,因为下面的步骤会直接占用sd卡大概1GB的空间,我是16GB。

       首先,如果你的手机内核不支持init.d脚本,请更换一个支持的内核,部分手机可能需要解锁,解锁教程请执行参考你手机的解锁教程。

       然后,刷好内核后,需要给sd卡分区,给sd卡分区会丢失所有sd卡上的数据,分区前需要备份重要数据。【分区步骤如下:1、开机时当手机显示sony时会震动一下,这时候按一下返回键,进入recovery。2、进入recovery后用音量键来上下选择条目advanced,用home键来确认选择,在advanced里选择partition sd sdcard,根据你的需要选择要分区的大小,这个分区将会被你挂载为内部存储来供手机使用,然后会让你选择swap分区的大小,如果你的TF卡不是C10或者更高的话,建议选择0,不然反而会托慢你的手机运行速度。然后就是等待分区完成。完成后按返回键返回到recovery主菜单,按home键选择reboot to system来重启手机】。

       接着,
            1、下载安装终端模拟器【下载链接:http://www.coolapk.com/apk/jackpal.androidterm】、RootExplorer【下载链接:http://www.coolapk.com/apk/com.speedsoftware.rootexplorer】、钛备份【下载链接:http://www.coolapk.com/apk/com.keramidas.TitaniumBackup】这三个工具,另外下载这个文件【链接:http://pan.baidu.com/share/link?shareid=1361026920&uk=4079671108】,用rootexplorer把下载的MountSDExt脚本移动到root目录下的/system/etc/init.d/文件夹里,权限改为rwxr-xr-x,重启手机。
            2、重启后打开终端模拟器,开启手机旋转,横屏下输入su,回车,然后输入busybox df -h,回车,看看条目里有没有一个

“/dev/block/mmcblk0p2  xxxM  xxxM xxxM /sd-ext”这样一个条目如图:

如果有的话说明挂载成功,可以进行下一步操作了。如果没有就说明你的内核不支持init.d脚本,请更换支持的内核或者自行搜索如何在/system/bin/里创建自启动init.d的脚本文件。
            3、打开RootExplorer,进入到root目录下的/data/文件夹,选择其中的app和davlik-cache两个文件夹,复制到root目录下的/sd-ext/里,复制过程可能比较慢,复制完成后,删除root目录下的/data/文件夹里的app和davlik-cache文件夹【建议删除前先用RootExplorer复制一份到sd卡当备份用】。【注意,此步骤也可以在终端模拟器root身份下下通过终端命令cp,rm来完成】。【可选步骤:然后在终端模拟器里以root身份运行chown system /sd-ext/app /sd-ext/davlik-cache】
            4、打开终端模拟器,输入su,回车,然后输入 ln -s /sd-ext/app /data/app ,回车,输入ln -s /sd-ext/davlik-cache /data/davlik-cache ,回车。在/data里创建两个文件夹的软链接如图:

然后重启,这样a2sd就完成了。打开钛备份,会发现基本信息页面里出现了一个SD卡(A2SD)的状态显示,如图:

然后在钛备份里面通过批处理选择“移动用户程序到内置存储,如图:

完成后就会把所有的已安装应用移动到新开辟的/sd-ext/挂载点下了。

到此,为设备添加A2SD的操作就已经完成了,以后再安装应用,都将会自动的被安装到/sd-ext/app里,如果有应用在安装时后自作聪明把自己安装到sd卡上,用钛备份批处理移动下就OK了。

为Android设备添加A2SD支持的更多相关文章

  1. Android系统移植与调试之------->如何修改Android设备添加重启、飞行模式、静音模式等功能(二)

    今天要说的是为Android设备添加重启.飞行模式.静音模式按钮,客户需求中需要添加这项功能,在长按电源键弹出的菜单中没有这些选项,谨以此文记录自己添加这个功能的过程. 首先找到长按电源键弹出的对话框 ...

  2. [置顶] Android系统移植与调试之------->如何修改Android设备添加3G上网功能

    1.首先先来看一下修改前后的效果对比图 step1.插上3G设备前 step2.插上3G设备后,获取信号中.... step3.插上3G设备后,获取到信号 step4.使用3G信号浏览网页 2.下面讲 ...

  3. Microsoft Azure IoTHub Serials 2 - 如何为android应用添加IoTHub支持

    1. 在build.gradle(app)文件的dependencies中添加对以下项的依赖: 'com.microsoft.azure.sdk.iot:iot-device-client:1.5.3 ...

  4. Android系统移植与调试之------->如何修改Android设备添加3G上网功能

    1.首先先来看一下修改前后的效果对比图 step1.插上3G设备前 step2.插上3G设备后,获取信号中.... step3.插上3G设备后,获取到信号 step4.使用3G信号浏览网页 2.下面讲 ...

  5. 别再为了iOS新系统设备而重新安装一个新版Xcode了.其实我们可以添加版本支持

    众所周知,Xcode7.3的代码补全是有问题的  如导入自定义类之后,在代码中并不会补全相应的类名... 但Xcode7.2是没有这个问题的,但很多时候我们自己的设备都升级到了iOS9.3.X系统,导 ...

  6. IIS 添加mime 支持 apk,exe,.woff,IIS MIME设置 ,Android apk下载的MIME 设置 苹果ISO .ipa下载mime 设置

    原文:IIS 添加mime 支持 apk,exe,.woff,IIS MIME设置 ,Android apk下载的MIME 设置 苹果ISO .ipa下载mime 设置 站点--右键属性--http头 ...

  7. android设备内部添加apn信息

    由于工作原因今天需要给多台android设备中写入某张sim卡的apn相关信息,虽然可以通过sqlite命令写sql语句来写入到设备中,但设备一多起来就太低效了,所以在学习的过程中摸索着写了一个将ap ...

  8. 在ios android设备上使用 Protobuf (使用dll方式)

    http://game.ceeger.com/forum/read.php?tid=13479 如果你的工程可以以.Net 2.0 subset模式运行,请看这个帖子中的方法. 地址:http://g ...

  9. 微软云平台媒体服务实践系列 1- 使用静态封装为iOS, Android 设备实现点播(VoD)方案

    微软的云平台媒体服务为流媒体服务提供了多种选择,在使用流媒体服务为企业做流媒体方案时,首先需要确认要流媒体接收目标,如针对广大iOS, Android移动设备,由于它们都支持HLS 格式的流媒体,基于 ...

随机推荐

  1. 201521123073 《Java程序设计》第14周学习总结

    14周-数据库 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 2. 书面作业 1. MySQL数据库基本操作 建立数据库,将自己的姓名.学号作为一条记录插入. ...

  2. SQLite中Cursor类的说明

    在Android 查询数据是通过Cursor 类来实现的.当我们使用 SQLiteDatabase.query()方法时,就会得到Cursor对象, Cursor所指向的就是每一条数据. Cursor ...

  3. Ansible系列(六):循环和条件判断

    本文目录:1. 循环 1.1 with_items迭代列表 1.2 with_dict迭代字典项 1.3 with_fileglob迭代文件 1.4 with_lines迭代行 1.5 with_ne ...

  4. 获取sd卡的总大小和可用大小

  5. CSS3微信启动页天王星版

    今天被微信启动页刷屏了. 一直还以为启动页背景显示的月球的.今天才了解到这么有含义. 我也蹭一下微信的热度,做一个HTML+CSS版本的. 用CSS画地球太困难了,来个简单点的,天王星版. 主要使用到 ...

  6. AngularJS -- 指令(创建自定义指令)

    点击查看AngularJS系列目录 转载请注明出处:http://www.cnblogs.com/leosx/   什么是指令 注:本指南是针对已经熟悉AngularJS基础知识的开发人员.如果你才刚 ...

  7. Python文件读写模式

    r 打开只读文件,该文件必须存在. r+ 打开可读写的文件,该文件必须存在.可读,可写,可追加. w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失.若文件不存在则建立该文件. w+ 打 ...

  8. java数据库编程之初始Mysql

    2.3:命令行连接mySql 2.3.1:检查是否启动服务 步骤:计算机-----管理------服务和应用程序-------服务---搜索mysql右键启动服务 2.3.2:命令行方式连接数据库 步 ...

  9. SQL Server Compact/SQLite Toolbox 使用

    最近一个嵌入式的数据库用的SqlCe 需要导入到Sqlite, 网上查到了这个工具--SQL Server Compact/SQLite Toolbox.但是在使用的时候遇到了一点小曲折,记录下来给需 ...

  10. Weave Scope 容器地图 - 每天5分钟玩转 Docker 容器技术(80)

    Weave Scope 的最大特点是会自动生成一张 Docker 容器地图,让我们能够直观地理解.监控和控制容器.千言万语不及一张图,先感受一下. 下面开始实践 Weave Scope. 安装 执行如 ...