将应用移至SD卡


8

我目前对现在要使用的Mod感到困惑。顺便说一下,我的设备是Samsung Galaxy S3 I9300-International(植根于Omega ROM 42.3和Kernel SiyahKernel v1.9.1)。我扎根手机的原因是能够将应用程序移至SD卡。我的选择在这里:

  1. 目录绑定

  2. ExtSd2InternalSd

即使在Android 4.2 JellyBean上,我也不知道哪一种是在兼容性方面最合适的,因为我太害怕弄乱手机了。首选发布于2011年,而另一个发布于2012年。我不知道哪种手机更稳定。希望您的建议。


2
出于所有对您的敬意,由于您担心积木,我想知道您是否可以分享为什么在拥有16 GB的机载存储空间时要使用任何类型的Apps2SD解决方案?
Harsha K

Answers:


11

如果允许我从您提供的选择中提出建议,我将建议Link2SD

使用Link2SD,您可以尝试将非关键应用程序移动/链接到SD卡并检查其工作情况。移动或链接后,请尝试重新启动手机(除了重新启动以避免失望之外,别无其他方法),然后查看移动/链接的非关键应用程序是否工作正常。通过采用这种方法,不会给手机带来任何严重的麻烦。

由于您的电话已扎根并且具有自定义内核,因此我假设您精通该工具。如果没有,您可以始终参考此分步指南

更新和其他信息

有两种释放Android内部内存的方法。

  1. 将应用程序移至外部存储:Froyo(2.2–2.2.3,API级别8)引入了选择在外部卡上安装应用程序的功能。这也允许将现有应用程序移动到外部存储。这里要注意的几点是:

    • 仅需进行设置即可移动以后安装的
      应用程序。可以通过ADB命令设置。
    • 有许多可用的应用程序,使用户可以将任何现有应用程序移动到SD卡,前提是开发人员没有故意将这些应用程序标记为不可移动。系统应用程序也无法移动到SD卡。
    • 无论哪种情况,应用程序都不会完全使用内部存储器。尽管与完全不将应用程序移动/安装到外部存储的情况相比,它的使用量很小,但被认为是微不足道的。
  2. 将应用程序链接到外部存储:链接与移动完全不同。此过程将应用程序的文件移动到外部卡,并在内部存储器中的位置创建符号链接。由于该链接是对这些文件的引用,因此Android不会对此进行投诉。下面在Link2SD的站点中对此进行了详细介绍:

问:Link2SD中的“移至SD卡(Android原生)和创建(符号)链接”之间有什么区别?哪种方法可以节省最大的内部内存,“链接”相对于“移动”有何优势?反之亦然?

本机apps2sd从Android 2.2(Froyo)开始,Google引入了本机apps2SD。此方法移动

  • Android 2.2上的apk文件
  • Android 2.3+上的apk + lib文件

放入主FAT分区中SD卡上的安全文件夹中。

这是最简单的方法,因为它不需要您对sdcard和root特权进行分区。

但是它有一些缺点。

第一个缺点是应用程序文件仅存储在sdcard的主FAT分区上。当您启用USB大容量存储与计算机共享文件(或以其他方式卸载或移除外部存储)时,安装在外部存储上且当前正在运行的任何应用程序都会被杀死。在禁用大容量存储并将外部存储重新安装到设备上之前,系统实际上不会意识到该应用程序。除了杀死该应用程序并使其对用户不可用之外,这还可能以更严重的方式破坏某些类型的应用程序。

因此,第二个缺点是由于上述原因,并非所有应用程序都可以使用本机apps2sd方法移动。为了使应用程序能够始终如一地运行,开发人员不应使用以下任何功能将其安装在外部存储器上,这是由于卸载外部存储器时会引起以下后果:窗口小部件,服务,警报服务,动态壁纸,动态文件夹,帐户管理器,同步适配器,监听“启动完成”的广播接收器。

强制移动(需要root);您可以使用本机apps2SD强制将应用程序移动到SD卡,即使该应用程序不支持如上所述移动。如果您具有root特权,Link2SD和某些其他应用程序可能会强制移动应用程序。但是,请注意,这可能会破坏某些应用程序,如上所述。

Link2SD

Link2SD将应用程序的apk + dex + lib文件移动到第二个分区,并在内部存储的原始位置创建符号链接。第一个优点是,与本机apps2sd方法相比,它还可以释放内部文件的更多空间,因为它也可以移动dex文件。

Link2Sd相对于本机apps2sd的第二个优势是,通过创建符号链接,您可以使Android假定这些应用程序已安装到内部存储器中,尽管实际上所有文件都位于SD上。因此,您可以将所有应用程序链接到SD卡;小部件,服务,动态壁纸等,所有这些都可以正常使用,而SD卡没有任何问题。

第三个优点是,即使将SD卡安装到PC上,您所链接的应用程序仍然可以正常运行!因为Android会卸载第一个FAT分区以与您的计算机共享文件,但是第二个分区仍保持挂载状态。Link2SD允许您即使将其作为磁盘驱动器安装到计算机上,也可以运行所有“ SD应用程序”。

而且,缺点是,显然,它需要root特权和SD卡上的第二个分区。它不能像本机apps2sd那样“开箱即用”工作,您需要根设备并自己在SD卡上创建第二个分区。


Link2SD是Android 2.2+中的默认移动机制吗?
NoBugs

@ NoBugs,Link2SD是一个应用程序,不是Android的一部分。从Android 2.3开始,引入了将应用程序移动到SD卡的功能。但是,链接类似于移动,只能通过Link2SD和类似的其他应用程序进行。
Narayanan 2013年


我的错误@ NoBugs,Android SDK 文档明确指出Beginning with API Level 8, you can allow your application to be installed on the external storage (for example, the device's SD card).Android 2.2至2.2.3(Froyo)版本属于Wikipedia
Narayanan 2013年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.