【问题标题】:Issues with ActionBarSherlock - Install fails on Android 2.3.7ActionBarSherlock 的问题 - 在 Android 2.3.7 上安装失败
【发布时间】:2013-02-03 18:04:58
【问题描述】:

我在我的一个项目中使用 ActionBarSherlock 时遇到问题。我的应用程序在将其推送到我的 Nexus 4 时可以正常安装,但是当我尝试将其安装到我的 HTC Desire(带有 Android 2.3.7 的 CM7 - API 级别 10)时,我收到以下错误。

[2013-02-03 18:47:44 - MyApp] Project dependency found, installing: Actionbar
[2013-02-03 18:47:44 - Actionbar] Uploading Actionbar.apk onto device 'HT042PL03910'
[2013-02-03 18:47:44 - Actionbar] Installing Actionbar.apk...
[2013-02-03 18:47:47 - Actionbar] Installation error: INSTALL_FAILED_OLDER_SDK
[2013-02-03 18:47:47 - Actionbar] Please check logcat output for more details.
[2013-02-03 18:47:47 - MyApp] Launch canceled!

我正在使用 Sherlock 4.2.0 作为库项目,并添加了 android-support-v4 的 R11。 Sherlock 本身是这样配置的:

Manifest:
<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="16"/>


Project-Properties:

android.library=true
# Project target.
target=android-14

我的应用程序使用以下设置:

Manifest:
<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="16" />


Project-Properties:

target=Google Inc.:Google APIs:16
android.library.reference.1=../ActionbarSherlock

我浏览了整个 logcat 输出,但找不到任何有用的东西。有其他人经历过这种情况并可以帮助我吗?

========= 编辑 ================

我的应用程序清单(mindSdk 改为 8):

<?xml version="1.0" encoding="UTF-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="de.hsrm.medieninf.mobcomp.klingelapp"
    android:versionCode="1"
    android:versionName="1.0" >

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

    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.INTERNET" />

    <permission
        android:name="de.hsrm.medieninf.mobcomp.klingelapp.permission.C2D_MESSAGE"
        android:protectionLevel="signature" />

    <uses-permission android:name="de.hsrm.medieninf.mobcomp.klingelapp.permission.C2D_MESSAGE" />

    <!-- App receives GCM messages. -->
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
    <!-- GCM connects to Google Services. -->
    <uses-permission android:name="android.permission.INTERNET" />
    <!-- GCM requires a Google account. -->
    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <!-- Keeps the processor from sleeping when a message is received. -->
    <uses-permission android:name="android.permission.WAKE_LOCK" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/Theme.Sherlock.Light" >

        <uses-library android:name="com.google.android.maps" />

        (...Activities and Services here ...)

    </application>

</manifest>

来自具有 Google API 级别 10 的新 Emulator AVD 的完整 Logcat:

02-03 21:09:59.647: I/PackageManager(77): Removing non-system package:de.hsrm.medieninf.mobcomp.klingelapp
02-03 21:09:59.647: I/ActivityManager(77): Force stopping package de.hsrm.medieninf.mobcomp.klingelapp uid=10038
02-03 21:09:59.877: D/dalvikvm(77): GC_CONCURRENT freed 1369K, 49% free 5484K/10631K, external 3226K/4029K, paused 4ms+12ms
02-03 21:09:59.977: D/PackageManager(77): Scanning package de.hsrm.medieninf.mobcomp.klingelapp
02-03 21:09:59.977: I/PackageManager(77): Package de.hsrm.medieninf.mobcomp.klingelapp codePath changed from /data/app/de.hsrm.medieninf.mobcomp.klingelapp-1.apk to /data/app/de.hsrm.medieninf.mobcomp.klingelapp-2.apk; Retaining data and using new
02-03 21:09:59.977: I/PackageManager(77): Unpacking native libraries for /data/app/de.hsrm.medieninf.mobcomp.klingelapp-2.apk
02-03 21:10:00.047: D/installd(35): DexInv: --- BEGIN '/data/app/de.hsrm.medieninf.mobcomp.klingelapp-2.apk' ---
02-03 21:10:04.096: D/dalvikvm(598): DexOpt: load 250ms, verify+opt 957ms
02-03 21:10:04.306: D/installd(35): DexInv: --- END '/data/app/de.hsrm.medieninf.mobcomp.klingelapp-2.apk' (success) ---
02-03 21:10:04.306: W/PackageManager(77): Code path for pkg : de.hsrm.medieninf.mobcomp.klingelapp changing from /data/app/de.hsrm.medieninf.mobcomp.klingelapp-1.apk to /data/app/de.hsrm.medieninf.mobcomp.klingelapp-2.apk
02-03 21:10:04.306: W/PackageManager(77): Resource path for pkg : de.hsrm.medieninf.mobcomp.klingelapp changing from /data/app/de.hsrm.medieninf.mobcomp.klingelapp-1.apk to /data/app/de.hsrm.medieninf.mobcomp.klingelapp-2.apk
02-03 21:10:04.306: D/PackageManager(77):   Services: de.hsrm.medieninf.mobcomp.klingelapp.GCMIntentService de.hsrm.medieninf.mobcomp.klingelapp.services.LocationService de.hsrm.medieninf.mobcomp.klingelapp.services.SyncService de.hsrm.medieninf.mobcomp.klingelapp.services.AppService de.hsrm.medieninf.mobcomp.klingelapp.services.AuthService
02-03 21:10:04.306: D/PackageManager(77):   Receivers: com.google.android.gcm.GCMBroadcastReceiver
02-03 21:10:04.306: D/PackageManager(77):   Activities: de.hsrm.medieninf.mobcomp.klingelapp.ui.LoginActivity de.hsrm.medieninf.mobcomp.klingelapp.ui.MessageEditor de.hsrm.medieninf.mobcomp.klingelapp.ui.StartActivity de.hsrm.medieninf.mobcomp.klingelapp.ui.ContactsActivity de.hsrm.medieninf.mobcomp.klingelapp.ui.KlingelSettings de.hsrm.medieninf.mobcomp.klingelapp.ui.NewStartActivity de.hsrm.medieninf.mobcomp.klingelapp.ui.MessagesActivity de.hsrm.medieninf.mobcomp.klingelapp.ui.MessageDetails de.hsrm.medieninf.mobcomp.klingelapp.ui.RegisterActivity de.hsrm.medieninf.mobcomp.klingelapp.ui.FriendRequestActivity
02-03 21:10:04.306: D/PackageManager(77):   Permissions: de.hsrm.medieninf.mobcomp.klingelapp.permission.C2D_MESSAGE
02-03 21:10:04.326: I/ActivityManager(77): Force stopping package de.hsrm.medieninf.mobcomp.klingelapp uid=10038
02-03 21:10:04.436: I/installd(35): move /data/dalvik-cache/data@app@de.hsrm.medieninf.mobcomp.klingelapp-2.apk@classes.dex -> /data/dalvik-cache/data@app@de.hsrm.medieninf.mobcomp.klingelapp-2.apk@classes.dex
02-03 21:10:04.436: D/PackageManager(77): New package installed in /data/app/de.hsrm.medieninf.mobcomp.klingelapp-2.apk
02-03 21:10:04.446: W/PackageManager(77): Unknown permission android.permission.ADD_SYSTEM_SERVICE in package com.android.phone
02-03 21:10:04.446: W/PackageManager(77): Not granting permission android.permission.SEND_DOWNLOAD_COMPLETED_INTENTS to package com.android.browser (protectionLevel=2 flags=0x9be45)
02-03 21:10:04.457: W/PackageManager(77): Unknown permission com.google.android.gm.permission.WRITE_GMAIL in package com.android.settings
02-03 21:10:04.457: W/PackageManager(77): Unknown permission com.google.android.gm.permission.READ_GMAIL in package com.android.settings
02-03 21:10:04.466: W/PackageManager(77): Unknown permission android.permission.READ_OWNER_DATA in package com.android.email
02-03 21:10:04.476: W/PackageManager(77): Unknown permission com.android.providers.im.permission.READ_ONLY in package com.google.android.apps.maps
02-03 21:10:04.476: W/PackageManager(77): Not granting permission android.permission.DEVICE_POWER to package com.android.deskclock (protectionLevel=2 flags=0x8be45)
02-03 21:10:04.606: I/ActivityManager(77): Force stopping package de.hsrm.medieninf.mobcomp.klingelapp uid=10038
02-03 21:10:04.706: D/dalvikvm(260): GC_EXPLICIT freed 1K, 49% free 3020K/5831K, external 4756K/5631K, paused 67ms
02-03 21:10:04.746: D/dalvikvm(226): GC_EXPLICIT freed 94K, 51% free 2964K/5959K, external 1625K/2137K, paused 75ms
02-03 21:10:04.806: W/RecognitionManagerService(77): no available voice recognition services found
02-03 21:10:04.856: D/GTalkService(287): handlePackageInstalled: re-initialize providers
02-03 21:10:04.856: D/GTalkService(287): [RawStanzaProvidersMgr] ##### searchProvidersFromIntent
02-03 21:10:04.856: D/GTalkService(287): [RawStanzaProvidersMgr] no intent receivers found
02-03 21:10:05.136: I/Launcher(260): setLoadOnResume
02-03 21:10:05.226: D/dalvikvm(77): GC_EXPLICIT freed 1202K, 54% free 4962K/10631K, external 3226K/4029K, paused 75ms
02-03 21:10:05.256: I/installd(35): unlink /data/dalvik-cache/data@app@de.hsrm.medieninf.mobcomp.klingelapp-1.apk@classes.dex
02-03 21:10:05.296: D/AndroidRuntime(589): Shutting down VM
02-03 21:10:05.306: D/dalvikvm(589): GC_CONCURRENT freed 101K, 72% free 295K/1024K, external 0K/0K, paused 0ms+1ms
02-03 21:10:05.306: D/jdwp(589): Got wake-up signal, bailing out of select
02-03 21:10:05.306: D/dalvikvm(589): Debugger has detached; object registry had 1 entries
02-03 21:10:05.326: I/dalvikvm(589): JNI: AttachCurrentThread (from ???.???)
02-03 21:10:05.326: I/AndroidRuntime(589): NOTE: attach of thread 'Binder Thread #3' failed
02-03 21:10:06.686: D/AndroidRuntime(604): >>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit <<<<<<
02-03 21:10:06.686: D/AndroidRuntime(604): CheckJNI is ON
02-03 21:10:07.106: D/AndroidRuntime(604): Calling main entry com.android.commands.pm.Pm
02-03 21:10:07.196: D/dalvikvm(442): GC_EXPLICIT freed 10K, 51% free 2727K/5511K, external 1625K/2137K, paused 43ms
02-03 21:10:07.206: W/ActivityManager(77): No content provider found for: 
02-03 21:10:07.306: W/ActivityManager(77): No content provider found for: 
02-03 21:10:07.316: D/PackageParser(77): Scanning package: /data/app/vmdl-63285559.tmp
02-03 21:10:07.326: W/PackageParser(77): /data/app/vmdl-63285559.tmp (at Binary XML file line #8): Requires newer sdk version #16 (current version is #10)

【问题讨论】:

  • 你能分享一下logcat的输出吗?
  • 我更新了我的帖子,但仍然无法弄清楚我做错了什么。我创建了另一个项目,它使用相同的 sherlock-project 作为库,并且具有与我的项目相同的 buildtarget、min- 和 maxsdk。新项目安装没有问题。
  • 最后一行是...需要更新的 sdk 版本 #16(当前版本是 #10)。您的项目是否在没有 ActionBarSherlock 的情况下在 2.3.7 上运行?
  • 是的。在我集成 sherlock 之前,我只在 api-level 10 上运行的模拟器和设备上对其进行了测试。直到今天一切正常。

标签: android actionbarsherlock


【解决方案1】:

因此,我没有寻找错误的地方,而是检查了没有 sherlock 的工作修订版。然后,我将 sherlock 添加为库,并对我昨天所做的活动进行了相同的更改。但现在,安装工作正常。

【讨论】:

    猜你喜欢
    • 2013-11-20
    • 2015-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-12
    • 2013-05-10
    • 2017-02-28
    相关资源
    最近更新 更多