2012-02-14 106 views
22

当我从Eclipse中运行Android应用我遇到这个错误,我的应用程序无法启动:安装错误:INSTALL_FAILED_MEDIA_UNAVAILABLE?

Installation error: INSTALL_FAILED_MEDIA_UNAVAILABLE

Please check

logcat output for more details. Launch canceled!

但是当我打开logcat中,我看到的logcat不打印任何东西。

我认为我的清单文件存在一些问题。所以这里是我的清单文件:

android:installLocation="preferExternal">>

<uses-sdk android:minSdkVersion="8" /> 

<application 

    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:debuggable="true" > 

    <activity 
     android:name=".HelloWorld" 
     android:label="Test" > 

     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 


    </activity> 
</application> 

<uses-sdk android:targetSdkVersion="8" android:minSdkVersion="8"/>  
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 

回答

22

您的手机是否通过USB连接?如果是,则不安装SDCard。尝试以另一种模式连接手机或将软件apk复制到SD卡上,从PC断开连接并运行安装。它应该工作然后:-)

例如,我的摩托罗拉Defy支持USB模式“大容量存储模式”和“媒体服务器”模式。在大容量存储模式下,SD卡从设备上卸载,所以你可以从你的电脑访问它。

问题是“preferExternal”命令,它告诉Eclipse尝试在SDCard上进行安装。 您也可以尝试清除installLocation命令,将其安装在内部存储器中。

问候!

+2

号。正如我在标签中所说:) – hqt 2012-02-14 14:31:04

+1

好的,是你的虚拟设备中安装的SD卡吗? ;-) – RKuehn 2012-02-14 15:22:38

+0

对于其他使用HTC手机进行测试的用户,可以在连接到PC时将其设置为仅充电模式 – Arash 2014-03-14 12:41:40

16
  1. 转到cmd
  2. cdandroid sdk folder > platform tools
  3. 输入adb shell,现在#号出现
  4. 输入pm set-install-location 1和另一#出现能很好地工作你。

注意:pm命令中的1表示应用程序将只安装在内部存储上。有关更多信息,请参阅pm command

+0

谢谢。在它正常工作约10次应用程序运行后,我得到这个INSTALL_FAILED_MEDIA_UNAVAILABLE。我曾经不得不重新启动手机,但这个cmd似乎解决了这个问题。 – Purplemonkey 2013-02-14 10:32:48

+0

这解决了我的问题!我有一个三星Galaxy S2,它不使用16GB USB内部存储。谢谢! – 2013-09-16 10:11:31

+0

我需要使用:pm setInstallLocation 1作为set-install-loaction使访问被拒绝。不过谢谢,这让我走上了正轨。 – Mafro34 2013-11-20 08:28:18

8

在我的情况下,解决方案是到重新启动的电话。

+0

魔法修复也适用于我。 – 2016-02-03 17:47:49

+0

当android工作室试图卸载当前的应用程序时,Tjis可能会发生,但设备告诉adb应用程序仍然安装,因此重新启动devide可以解决问题。 – 2017-04-08 14:39:30

5

我解决它通过添加以下行的AndroidManifest.xml 文件在您的应用程序:

android:installLocation="auto" 

...它应该是这样的:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.MyTestApp" 
android:installLocation="auto" 
14

这是可以由于内存不足。对于我删除一些不必要的文件和应用程序时解决问题。

+1

谢谢你的android惊人的错误信息。因为“NO SPACE AVAILABLE”太主流了 – felipeek 2017-07-27 19:54:56

1

我删除了手机上的一些文件或应用程序后,我的情况工作。我使用的HTC手机,我认为手机需要的空间量可用的内存,并且所需的空间量从电话到电话

3

变化在我的情况

1 - 卸载一些无用/低使用各种应用

2 - 明确的RAM内存,我只使用Android模拟器

+0

我的情况也是,谢谢 – 2017-10-24 20:12:43