【问题标题】:Deployment failed, Internal error部署失败,内部错误
【发布时间】:2015-09-16 06:05:01
【问题描述】:

我正在开发 Xamarin Android 应用程序。当我运行我的应用程序时,我收到了这个错误:

错误:意外安装输出:pkg:/data/local/tmp/com.iKart.androidapplication-Signed.apk 失败 [INSTALL_PARSE_FAILED_MANIFEST_MALFORMED]

我的包名是:com.iKart.androidapplication

我已经使用 adb uninstall 从设备上卸载了我的应用程序,但我仍然收到此错误。

解决办法是什么?请帮忙!

这是我的清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.iKart.androidapplication">
<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="21" />
<application android:theme="@style/Theme.AppCompat.Light" android:label="Mono.Droid">
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id" />
<activity android:name="com.facebook.FacebookActivity" android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation" android:theme="@android:style/Theme.Translucent.NoTitleBar" android:label="@string/app_name" />
</application>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
</manifest>

在 Android 设备日志记录(Visual Studio)中,我得到了:

09-16 11:16:20.736 D/AndroidRuntime(23211): 
09-16 11:16:20.736 D/AndroidRuntime(23211): >>>>>> AndroidRuntime START     com.android.internal.os.RuntimeInit <<<<<<
09-16 11:16:20.736 D/AndroidRuntime(23211): CheckJNI is OFF
09-16 11:16:20.746 D/dalvikvm(23211): Trying to load lib libjavacore.so 0x0
09-16 11:16:20.746 D/dalvikvm(23211): Added shared lib libjavacore.so 0x0
09-16 11:16:20.756 D/dalvikvm(23211): Trying to load lib libnativehelper.so 0x0
09-16 11:16:20.756 D/dalvikvm(23211): Added shared lib libnativehelper.so 0x0
09-16 11:16:20.957 D/AndroidRuntime(23211): Calling main entry com.android.commands.pm.Pm
09-16 11:16:20.967 D/PackageItemInfo(23211): PackageItemInfo static run 
09-16 11:16:20.967 D/AndroidRuntime(23211): Shutting down VM
09-16 11:16:21.157 D/dalvikvm(23211): GC_FOR_ALLOC freed 3206K, 51% free  3107K/6332K, paused 5ms, total 7ms
09-16 11:16:21.167 I/dalvikvm-heap(23211): Grow heap (frag case) to 7.284MB for 2359312-byte allocation
09-16 11:16:21.177 D/dalvikvm(23211): GC_CONCURRENT freed 9K, 38% free 5402K/8640K, paused 2ms+4ms, total 10ms
09-16 11:16:21.247 D/dalvikvm(23211): GC_FOR_ALLOC freed 466K, 35% free 5674K/8640K, paused 5ms, total 5ms
09-16 11:16:21.247 I/dalvikvm-heap(23211): Grow heap (frag case) to 7.779MB for 250016-byte allocation
09-16 11:16:21.257 D/dalvikvm(23211): GC_FOR_ALLOC freed 34K, 34% free 5917K/8888K, paused 5ms, total 5ms
09-16 11:16:21.257 I/dalvikvm-heap(23211): Grow heap (frag case) to 7.823MB for 46672-byte allocation
09-16 11:16:21.297 D/PackageItemInfo(23211): MessageLoop costTime=336
09-16 11:16:21.307 D/dalvikvm(23211): GC_CONCURRENT freed 1102K, 27% free 6590K/8936K, paused 1ms+1ms, total 6ms
09-16 11:16:21.307 D/dalvikvm(23211): Compiler shutdown in progress - discarding request
09-16 11:16:21.307 D/dalvikvm(23211): Compiler shutdown in progress - discarding request
09-16 11:16:21.307 D/dalvikvm(23211): Compiler shutdown in progress - discarding request
09-16 11:16:21.307 D/dalvikvm(23211): Compiler shutdown in progress - discarding request
09-16 11:16:21.307 D/dalvikvm(23211): Compiler shutdown in progress - discarding request

【问题讨论】:

  • 请在此处粘贴您的清单
  • 我已经粘贴了@RajnishMishra
  • 你确定你的packgename是com.iKart.androidapplication 如果是这样,请重启你的手机并尝试重新安装它也重启一次Visual Studio
  • 是的,我确定包名称是正确的,是的,我重新启动了手机和 Visual Studio,但没有工作@RajnishMishra

标签: android deployment xamarin


【解决方案1】:

我自己解决了这个问题: 从设备上卸载应用程序,然后再次运行。如果仍然无法正常工作,请打开 Android SDK 命令提示符
(打开 Xamrin-studio > 工具 > 打开 Android SDK 命令提示符)
然后写下:

D:\Android\android-sdk> adb 卸载(应用程序包名称)

您可以从属性文件夹中的 Androidmenifest 文件中获取应用程序包名称。
这肯定会解决错误。
谢谢你

【讨论】:

  • 感谢您的回答.. 节省时间。
【解决方案2】:

你应该重命名你的包名

来自

com.iKart.androidapplication

com.ikart.androidapplication

注意大写K改为小k

转到设置和应用程序并确保未安装任何具有相同包名的应用程序尝试使用adb install -r ikart.apk重新安装

【讨论】:

    【解决方案3】:

    根据不同的场景有可能的解决方案

    案例 1:卸载应用程序有时会留下数据文件夹,我们需要从“应用程序管理器”手动卸载应用程序文件夹

    案例 2:如果应用程序已卸载并且没有看到应用程序文件夹 [带有应用程序包名称],那么我们需要使用 adb 命令来卸载这些文件夹。使用 [adb shell pm list packages] 命令将显示设备中所有可用包的列表。如果您在列表中看到您的应用程序包,则运行另一个 adb 命令以删除 [adb shell pm uninstall package name]

    案例 3:如果这些都不起作用,那么我们需要检查 Xamarin 工作室提供的选项。在项目选项下启用共享单声道运行时。

    希望其中之一能解决您的问题。

    【讨论】:

      【解决方案4】:

      我认为您的 Facebook 活动有问题。这就是你正确的写法:

          <activity android:name="com.facebook.FacebookActivity" 
                android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation" 
                android:theme="@android:style/Theme.Translucent.NoTitleBar" 
                android:label="@string/app_name" />
      <meta-data android:name="com.facebook.sdk.ApplicationId" 
                 android:value="@string/app_id" />
      <provider android:authorities="com.facebook.app.FacebookContentProvider[your app_id (without brackets)]" 
                android:name="com.facebook.FacebookContentProvider" 
                android:exported="true" />
      

      【讨论】:

      • 我不这么认为,因为在更改应用程序名称后我收到了这个错误。之前它工作正常。我在 xamarin 中工作,所以这种格式是正确的。虽然我试过你的但没有工作.Thanks.@misho
      • 好的,从包名中删除大写字母:iKart => ikart
      • 包名中不允许使用大写字母
      【解决方案5】:

      在 AndroidManifest.xml 设置中,将“安装位置”从默认更改为自动

      【讨论】:

        【解决方案6】:

        在我的情况下,卸载我在设备上使用 Xamarin 安装的所有以前的应用程序解决了这个问题。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2022-01-24
          • 1970-01-01
          • 1970-01-01
          • 2018-05-07
          • 1970-01-01
          • 1970-01-01
          • 2018-04-17
          相关资源
          最近更新 更多