Lớp: Thực thi không thành công cho nhiệm vụ ': processDebugManifest'


142

Tôi đang gặp một lỗi cấp độ khi xây dựng từ hôm qua - nó chỉ xuất hiện ngẫu nhiên ....

Stacktrace đầy đủ ở đây:

Dự án của tôi phụ thuộc vào nhiều thư viện và nó được xây dựng mà không có vấn đề gì cho đến ngày hôm qua (ngay cả với các thư viện)

compile 'com.google.android.gms:play-services:3.1.36'
compile 'com.android.support:support-v4:13.0.0'
compile project(":libs:DatabaseCreationHelper")
compile project(":libs:actionbarsherlock")

Bất cứ ai có một ý tưởng làm thế nào để sửa chữa nó? nó chỉ ngẫu nhiên đến ... Toàn bộ stacktrace ở đây:

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':ItchyFeet:processDebugManifest'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
at org.gradle.api.internal.changedetection.state.CacheLockReleasingTaskExecuter$1.run(CacheLockReleasingTaskExecuter.java:35)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.cache.internal.DefaultCacheAccess.longRunningOperation(DefaultCacheAccess.java:179)
at org.gradle.cache.internal.DefaultCacheAccess.longRunningOperation(DefaultCacheAccess.java:232)
at org.gradle.cache.internal.DefaultPersistentDirectoryStore.longRunningOperation(DefaultPersistentDirectoryStore.java:142)
at org.gradle.api.internal.changedetection.state.DefaultTaskArtifactStateCacheAccess.longRunningOperation(DefaultTaskArtifactStateCacheAccess.java:83)
at org.gradle.api.internal.changedetection.state.CacheLockReleasingTaskExecuter.execute(CacheLockReleasingTaskExecuter.java:33)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.ContextualisingTaskExecuter.execute(ContextualisingTaskExecuter.java:34)
at org.gradle.api.internal.changedetection.state.CacheLockAcquiringTaskExecuter$1.run(CacheLockAcquiringTaskExecuter.java:39)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:124)
at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:112)
at org.gradle.cache.internal.DefaultPersistentDirectoryStore.useCache(DefaultPersistentDirectoryStore.java:134)
at org.gradle.api.internal.changedetection.state.DefaultTaskArtifactStateCacheAccess.useCache(DefaultTaskArtifactStateCacheAccess.java:79)
at org.gradle.api.internal.changedetection.state.CacheLockAcquiringTaskExecuter.execute(CacheLockAcquiringTaskExecuter.java:37)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:57)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:41)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:51)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:52)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:42)
at org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:282)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.executeTask(DefaultTaskPlanExecutor.java:48)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.processTask(DefaultTaskPlanExecutor.java:34)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:27)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:89)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:29)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23)
at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67)
at org.gradle.api.internal.changedetection.state.TaskCacheLockHandlingBuildExecuter$1.run(TaskCacheLockHandlingBuildExecuter.java:31)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:124)
at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:112)
at org.gradle.cache.internal.DefaultPersistentDirectoryStore.useCache(DefaultPersistentDirectoryStore.java:134)
at org.gradle.api.internal.changedetection.state.DefaultTaskArtifactStateCacheAccess.useCache(DefaultTaskArtifactStateCacheAccess.java:79)
at org.gradle.api.internal.changedetection.state.TaskCacheLockHandlingBuildExecuter.execute(TaskCacheLockHandlingBuildExecuter.java:29)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23)
at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:67)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:61)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:54)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:166)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:113)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:81)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:64)
at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:33)
at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:35)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:50)
at org.gradle.api.internal.Actions$RunnableActionAdapter.execute(Actions.java:171)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:201)
at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:174)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:170)
at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:139)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
at org.gradle.launcher.Main.doAction(Main.java:48)
at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
at org.gradle.launcher.Main.main(Main.java:39)
at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:50)
at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:32)
at org.gradle.launcher.GradleMain.main(GradleMain.java:26)
Caused by: java.lang.RuntimeException: Manifest merging failed. See console for more info.
at com.android.builder.AndroidBuilder.doMerge(AndroidBuilder.java:475)
at com.android.builder.AndroidBuilder.mergeLibraryManifests(AndroidBuilder.java:461)
at com.android.builder.AndroidBuilder.processManifest(AndroidBuilder.java:301)
at com.android.builder.AndroidBuilder$processManifest.call(Unknown Source)
at com.android.build.gradle.tasks.ProcessAppManifest.doFullTaskAction(ProcessAppManifest.groovy:65)
at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.groovy:71)
at org.gradle.api.internal.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:216)
at org.gradle.api.internal.BeanDynamicObject.invokeMethod(BeanDynamicObject.java:122)
at org.gradle.api.internal.CompositeDynamicObject.invokeMethod(CompositeDynamicObject.java:147)
at com.android.build.gradle.tasks.ProcessAppManifest_Decorated.invokeMethod(Unknown Source)
at org.gradle.util.ReflectionUtil.invoke(ReflectionUtil.groovy:23)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.doExecute(AnnotationProcessingTaskFactory.java:217)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:210)
at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:199)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:526)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:509)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
... 67 more

Câu trả lời:


133

Tìm thấy giải pháp cho vấn đề này:

lắp ráp lớp -info cho tôi gợi ý rằng Bản kê khai có các Phiên bản SDK khác nhau và không thể hợp nhất được.

Tôi cần chỉnh sửa tệp Bản kê khai và tệp build.gradle và mọi thứ hoạt động trở lại.


Để rõ ràng, bạn cần chỉnh sửa uses-sdktrong AndroidManifest.xml

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

androidphần, đặc biệt minSdkVersiontargetSdkVersiontrong tệp build.gradle

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 16
    }
}

1
Đảm bảo bạn chỉnh sửa tệp gradle.build trong trường hợp bạn đang sử dụng Android Studio. Các giá trị trên AndroidManifest.xml bị ghi đè trong quá trình xây dựng!
Diego Acosta

@Nakardo thay đổi các giá trị build.gradlekhông ghi đè lên các giá trị AndroidManifest.xmlkhi tôi thực hiệngradle assemble
Nimrod Dayan

1
@Nakardo Bản build.gradle sdkVersionluôn ghi đè AndroidManifest.xmltrích dẫn tài liệu Android: Giá trị minSdkVersion này không được sử dụng; nó luôn bị ghi đè bởi giá trị được chỉ định trong tập lệnh xây dựng Gradle Giá trị của (ví dụ) minSdkVersion chỉ được sử dụng nếu nó không được chỉ định trong tập lệnh xây dựng build.gradle. Khi được chỉ định trong tập lệnh xây dựng Gradle, giá trị tệp kê khai bị bỏ qua và có thể gây hiểu nhầm, do đó cần được loại bỏ để tránh sự mơ hồ.
Chad Bingham

@Lukas Olsen tại chỗ trên giải pháp. Phiên bản minsdk của tôi là 19 nhưng ở cấp độ là 10, vẫn không cần thiết cho targetSDK trong build.gradle mặc dù nó được khai báo trong tệp kê khai. Thật thú vị, tôi vừa cập nhật studio android của mình lên 2.1.1 và nó đã hoạt động trước đó. Vấn đề được khắc phục ngay bây giờ.
natur3

Theo dõi, lỗi thực sự trở lại do tôi có một thẻ dữ liệu meta trùng lặp kéo ID ứng dụng từ chuỗi String để sử dụng với phân tích cú pháp. Không có lỗi liên quan đến phân tích cú pháp nhưng dữ liệu meta đó đã gây ra sự cố, tôi thực sự không thấy chi tiết lỗi này cho đến khi tôi mở tab bảng điều khiển lớp trong android studio v. 2.1.1
natur3

125

Nói chung, để xem lỗi là gì, bạn có thể xem Tệp kê khai được hợp nhất trong studio Android

Đi vào tệp kê khai của bạn

nhập mô tả hình ảnh ở đây

Nhấp vào tab dưới cùng "Bản kê khai hợp nhất"

nhập mô tả hình ảnh ở đây

Trên màn hình bên phải, trong "Tệp kê khai khác", hãy kiểm tra xem có bất kỳ lỗi nào do lỗi không:

nhập mô tả hình ảnh ở đây


Bạn đã cứu ngày của tôi
Abhishek Pachal

34

Tôi ước giải pháp Lukas Olsen hoạt động cho các kịch bản khác, nhưng trong trường hợp của tôi thì hoàn toàn khác.

Tôi đã đối mặt tương tự trong khi thêm ActionBarShelock vào dự án, bằng cách so sánh với thư viện cũ hơn, tôi thấy rằng thẻ ứng dụng bị thiếu trong tệp kê khai. Bằng cách thêm một dòng tôi đã khắc phục vấn đề của mình.

</application>

Lần đầu tiên, nó là phiên bản SDK, nhưng bây giờ nó <application />bị thiếu. Bạn đã cứu tôi, thx.
Benjamin Toueg

Đây là trường hợp của tôi quá!
mổ

@Ahmad Ali Nasir nhưng trong trường hợp của tôi, tôi theo dõi Lukas Olsen nhưng không có gì thay đổi, bạn có thể giúp tôi không
Manoj

@Manoj chắc chắn, nhưng vui lòng chia sẻ tập lệnh build.THER của bạn và nhật ký lỗi, vì vậy tất cả chúng ta có thể hiểu rõ hơn về những gì bạn có thể đang làm sai.
Ahmad Ali Nasir

@Ahmad Ali Nasir chắc bro tôi đã đăng một câu hỏi ở đây có rất nhiều vào nó stackoverflow.com/questions/27266042/...
Manoj

17

Điều này dường như xảy ra vì Dịch vụ Google Play yêu cầu Android 2.2, phiên bản SDK 8.

Trong build.gradle, đảm bảo minSdkVersion của bạn ít nhất 8. Mặc định có vẻ là 7. Vì vậy, bạn có một cái gì đó như thế này:

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 16
    }
}

dependencies {
    compile 'com.android.support:support-v4:13.0.+'
    compile 'com.google.android.gms:play-services:3.1.36'
}

Điều này đã khắc phục sự cố Manifest của tôi nhưng bây giờ tôi gặp Gradle: error: không thể tìm thấy biểu tượng cho bất kỳ biến biểu tượng nào của tôi. Điều này đã xảy ra với tôi một lần trước đây khi tôi gặp lỗi biên dịch và sửa nó. Tôi bắt đầu nhận được những vấn đề này. Bất kỳ manh mối làm thế nào để khắc phục điều này?
Dan

Đã sửa nó, có vẻ như Gradle đã thêm một android nhập khẩu vào hoạt động chính của tôi. Tôi đã xóa dòng và tất cả đều tốt.
Dan

14

tôi đã giải quyết bằng cách đặt một dòng này trong thẻ ứng dụng ...

công cụ: nút = "thay thế"


Điều này đã giải quyết vấn đề của tôi. Cảm ơn! Tôi đã phải thêm nó dưới applicationthẻ trongAndroidManifest.xml
Reaz Murshed

Điều đó đã giải quyết vấn đề của tôi sau 30 phút tìm kiếm
Lập trình viên ứng dụng Demon

Đối với tôi, nó nói Tiền tố "công cụ" cho thuộc tính "công cụ: nút" được liên kết với một loại phần tử "ứng dụng" không bị ràng buộc.
Amritesh Anand

không làm việc cho tôi có lỗi: Tiền tố "công cụ" cho thuộc tính "công cụ: nút" được liên kết với một loại phần tử "ứng dụng" không bị ràng buộc.
Kapil soni

11

Tôi cũng gặp phải lỗi này khi thêm các thông báo đẩy firebase trong ứng dụng của mình. nhưng trong trường hợp của tôi, tôi đã làm một sai lầm rất ngớ ngẩn mà tôi nhận thấy sau một thời gian. Tôi đã khai báo dưới đây trong bảng kê khai hai lần. Sau khi loại bỏ khai báo trùng lặp. vấn đề của tôi đã được giải quyết.

        <service   android:name="com.evampsaanga.mytelenor.firebase.MyFirebaseInstanceIDService">
        <intent-filter>
            <action android:name="com.google.firebase.INSTANCE_ID_EVENT" />
        </intent-filter>
    </service>`

vì vậy bạn cũng kiểm tra xem có bất kỳ nội dung trùng lặp nào trong tệp kê khai ứng dụng của mình không.


Câu trả lời tốt nhất..!!
RUTURAJ Raval

5

Có thể đó là do khai báo Hoạt động trùng lặp trong tệp kê khai của bạn.


5

Nếu bạn thêm các phụ thuộc như ActionBarSherlock của Gradle, hãy
cẩn thận đặt targetSdkVersion 17 của bạn trở lên.

Dưới đây trích dẫn là --infonhật ký khi ActionBarSherlock không khớp với dự án riêng.

[C: \ Me \ Documents \ GitHub \ project \ AndroidManifest.xml: 3, C: \ Me \ Documents \ GitHub \ project \ build \ exploding-bundles \ ComActionbarsherlockActionbarsherlock440.aar \ AndroidManifest.xml: 2] sử dụng targetSdkVersion = '17 '
: testApp: processDebugManifest FAILED

Sẽ tốt hơn nếu duy trì dự án riêng targetSdkVersioncàng mới càng tốt.


Cảm ơn vì --info, tôi đã bị mắc kẹt và quản lý để giải quyết vấn đề bằng cách chạy ./gradlew assemble --info. Trong trường hợp của tôi, tôi đã khai báo gles phiên bản 2 trên bảng kê khai chính của mình, nhưng tôi đã không làm trong dự án thư viện. Nếu bạn không khai báo, nó mặc định là phiên bản 1 và đó là nguyên nhân gây ra lỗi (không tương thích).
Orgmir

4

Tôi đã gặp một vấn đề tương tự và những gì tôi đã làm để khắc phục nó là thêm

tools:replace="android:icon"

đến phần tử tại AndroidManifest để ghi đè


4

Nó có thể là một quyền trùng lặp được thêm vào trong tệp kê khai. Trong trường hợp của tôi, "used-allow android: name =" ERIC.READ_PHONE_STATE "đã được lặp lại.


3

Đối với những gì tôi có thể thấy, nếu bạn có một dự án đa mô-đun với Android Studio và gradle, IDE cố gắng hợp nhất các tệp kê khai từ mỗi mô-đun vào một bảng kê khai chính.

Nếu bạn có mô-đun A và mô-đun B và trong bảng kê khai A bạn khai báo một số hoạt động từ mô-đun B, lớp sẽ giải quyết vấn đề khi hợp nhất.

Hãy thử loại bỏ tham chiếu mô-đun chéo trong các tệp kê khai.


Tôi chỉ muốn chạy các trường hợp thử nghiệm Tôi đang sử dụng android studio, trong đó tôi có nhiều dự án A & B với thư viện chung cho cả hai nó không chạy gây ra lỗi dexdebugTest theo sau "Lukas Olsen" nhưng không thể thay đổi được
Manoj

@ Paolo M Tôi chỉ muốn chạy các trường hợp thử nghiệm Tôi đang sử dụng studio android trong đó tôi có nhiều dự án A & B với thư viện chung cho cả hai nó không chạy gây ra lỗi dexdebugTest theo sau "Lukas Olsen" nhưng không thể thay đổi.
Manoj

3

Trong trường hợp của tôi,

Tôi xác định hoạt động hai lần trong tệp kê khai

 <application
  android:allowBackup="false"
  android:label="@string/app_name"
  >


      <activity
        android:name="com.xxx.ActivityOne"
        android:configChanges="orientation|screenSize"
        android:windowSoftInputMode="stateHidden|adjustResize" />

      //Problem here.. same activity twice define

      <activity
        android:name="com.xxx.ActivityOne"
        android:configChanges="orientation|screenSize"
        android:windowSoftInputMode="stateHidden|adjustResize" />

     </application>

Sau khi loại bỏ các lỗi trùng lặp được giải quyết.


Vì vậy, vấn đề là <application> <Activity> phải được xác định một lần trong một thẻ <manifest>
muhammad tayyab

@muhammadtayyab no .. Tôi đã xác định cùng một hoạt động hai lần. đó chính là vấn đề. bạn có thể xác định n số <hoạt động>
Ranjith Kumar

2

Tôi đã có cùng một vấn đề và không có câu trả lời nào khác giúp được.

Trong trường hợp của tôi, một nhận xét trong tệp kê khai là thủ phạm:

<manifest [...]
    android:installLocation="auto">
    <!-- change installLocation back to external after test -->

    <uses-sdk [...]

(Đây có thể là một lỗi, xem cách nhận xét trong các khu vực khác của bảng kê khai không gây ra bất kỳ vấn đề nào.)


2

Tôi đã gặp vấn đề tương tự, khi tôi chạy

cordova build android

báo cáo lỗi nào:

 /home/app/phonegap/helloworld/platforms/android/AndroidManifest.xml:15:5 Error:
uses-sdk:minSdkVersion 7 cannot be smaller than version 10 declared in library  /home/app/phonegap/helloworld/platforms/android/build/intermediates/exploded-aar/android/CordovaLib/unspecified/debug/AndroidManifest.xml
Suggestion: use tools:overrideLibrary="org.apache.cordova" to force usage

: processDebugManifest FAILED

FAILURE: Build thất bại với một ngoại lệ.

  • Điều gì đã sai: Thực thi không thành công cho nhiệm vụ ': processDebugManifest'.

    Việc sáp nhập không thể thực hiện được xml Gợi ý: sử dụng các công cụ: overrideL Library = "org.apache.cordova" để buộc sử dụng

Trong trường hợp của tôi,

uses-sdk:minSdkVersion 7 cannot be smaller than version 10 declared

, giải pháp trên không hoạt động! nhưng tôi giải quyết chúng bằng cách thay thế

<preference name="android-minSdkVersion" value="7" />

như

<preference name="android-minSdkVersion" value="10" />

trong hai tập tin này /home/app/phonegap/helloworld/config.xml,/home/app/phonegap/helloworld/platforms/android/res/xml/config.xml


2

2 điều bạn cần thêm vào AndroidManifest.xml:

Thứ 1: thêm xmlns: tools = "http://schemas.android.com/tools" vào thẻ kê khai

<manifest xmlns:android=".........
   package="...........
   xmlns:tools="http://schemas.android.com/tools">

Lần 2: Thêm công cụ: thay thế = "icon" vào thẻ ứng dụng

<application
       android:icon=.........
       android:label=.......
       tools:replace="icon">

1

Hãy thử thay đổi:

<manifest xmlns:android="http://schemas.android.com/apk/res/android">
...
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="16" />

Đến:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">
...
<uses-sdk xmlns:tools="http://schemas.android.com/tools"
    android:minSdkVersion="14" android:targetSdkVersion="16" />

1

Nếu bạn đang sử dụng android studio, bạn nên chạy android studio thông qua dấu nhắc lệnh (trong windows) hoặc terminal (trong hệ điều hành cơ sở UNIX) để bạn có thể xem chi tiết hơn về lỗi này trong cửa sổ nhắc lệnh.


Bạn có thể chỉ định bất kỳ tùy chọn dòng lệnh gradle nào từ hộp thoại Cài đặt Gradle được mở bằng cách nhấn nút cuối cùng trên tab Gradle trong IDE, do đó không cần phải sử dụng dòng lệnh. Tuy nhiên, số lượng shit chúng tôi phải đưa vào bằng cách sử dụng công cụ xây dựng này thực sự không thể tin được.
Giulio Piancastelli

1

Tìm thấy một giải pháp khả thi khác cho việc này khi cố gắng cập nhật Urban Airship của tôi lên phiên bản mới nhất. Trong tệp build.gradle cấp cao nhất của tôi, mã trông như sau:

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.12.2'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

theo mặc định như được tạo bởi Android Studio. Tôi đã thay đổi phiên bản này thành phiên bản lớp sau bằng cách thay thế bằng:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.13.+'
    }
}

Và sau đó dự án sẽ xây dựng.


Một cái gì đó như thế này cũng là vấn đề của tôi! Tôi đã có kho lưu trữ {mavenCentral ()} trong build.gradle, loại bỏ điều này đã giải quyết vấn đề.
David

1

Trong trường hợp của tôi, đó là do sự cho phép trùng lặp trong tệp Manifest của tôi và minSDKVersion của thư viện lớn hơn minSDKVersion của dự án của tôi. Tôi chỉ làm cho minSDKVersion bằng nhau và được biên dịch thành công.


1

Vấn đề này được nêu ra vì compileSdkVersion 26 buildToolsVersion "26.0.0" hoặc biên dịch 'com.android.support:appcompat-v7:26.+'

thay vì sử dụng compileSdkVersion 25 buildToolsVersion "25.0.3" biên dịch 'com.android.support:appcompat-v7:25.+'


1

Trong trường hợp của tôi, tôi đã viết thẻ hai lần. Đó là sai lầm duy nhất của tôi Đó là trước khi mã

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>

    <uses-permission android:name="android.permission.RECORD_AUDIO"/>


<application tools:targetApi="28" tools:ignore="GoogleAppIndexingWarning" android:networkSecurityConfig="@xml/react_native_config" />




<application application tools:targetApi="28" tools:ignore="GoogleAppIndexingWarning" android:networkSecurityConfig="@xml/react_native_config" >

</application>

`

Chỉ cần xóa thẻ ứng dụng đã giải quyết vấn đề của tôi.

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools">

    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>



    <application tools:targetApi="28" tools:ignore="GoogleAppIndexingWarning" android:networkSecurityConfig="@xml/react_native_config" />



</manifest>

Những điểm bạn chỉ nên có một thẻ; có thể có nhiều hơn một, nhưng một thẻ. Đó là những gì tôi biết tại thời điểm này :)


1

Có thể bạn có một số Hoạt động trùng lặp

Như thế này:

<activity android:name=".register.RegisterStepsActivity" />

....

<activity android:name=".register.RegisterStepsActivity" />

chỉ nhận xét một trong số họ


1

Lỗi này có thể là do một thuộc tính bị bỏ trống trong tệp kê khai.

Một ví dụ:

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:logo="@drawable/ic_actionbar"
    android:supportsRtl="true"
    android:fullBackupContent="">
...
</application>

Cái fullBackupContenttrống trong ví dụ trên.

Khi nó được đổi thành android:fullBackupContent="true"nó sẽ được sửa.


1

Chỉ cần thêm hai dòng này tại "gradle.properies":

android.useAndroidX=true
android.enableJetifier=true

2
không thể như vậy được, tôi đã có những dòng đó gradle.propertiesvà không bắt đầu gặp lỗi này cho đến khi tôi cố chạy nó trong môi trường HĐH Windows.
Daniel

0

Tôi đã gặp những lỗi này vì tôi không cài đặt phiên bản SDK yêu cầu. Sau khi tải xuống và cài đặt phiên bản SDK có trong tệp build.gradle / Android Manifest, nó đã được giải quyết.


0

Tôi đã gặp vấn đề trong một lý do khác.

Tôi đang xây dựng ứng dụng trong Android Studio và tôi có một mô-đun ứng dụng và một mô-đun khác. Mô-đun ứng dụng phụ thuộc vào các mô-đun khác.

Nhưng một phần của build.gradlemô-đun ứng dụng là:

<application
    android:allowBackup="false"
    android:label="@string/app_name"
    android:supportsRtl="true">

    ...

</application>

trong khi phần khác của mô-đun build.gradlelà:

<application
    android:allowBackup="true"
    android:label="Android Lua"
    android:supportsRtl="true">

</application>

Vì vậy, tôi thay đổi build.gradlephần của mô-đun thành:

<application
    android:allowBackup="false"
    android:label="@string/app_name"
    android:supportsRtl="true">

</application>

Vấn đề được giải quyết.



0

Trong trường hợp của tôi, tôi đã nhập vào tệp kê khai một cấu trúc thẻ không hợp lệ, tôi đã đóng một hoạt động mở nhưng bên trong nó có quặng activities (...)làm mất hiệu lực tính chính xác của tệp, để tìm thấy nó mất khá hai giờ, lỗi báo cáo bị thiếu / không xác định <activity>.


0
compile 'com.github.wenchaojiang:AndroidSwipeableCardStack:0.1.1'

Nếu đây là phần phụ thuộc mà bạn đã thêm thì hãy đổi nó thành:

compile 'com.github.wenchaojiang:AndroidSwipeableCardStack:0.1.4'

và đảm bảo rằng target sdkkhông nên ít hơn 15 .


0

Tôi đã giải quyết vấn đề này trong Android Studio 3.5 bằng cách làm sạch và xây dựng lại dự án.

Chỉ cần nhấp để Xây dựng -> Xây dựng lại Dự án.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.