【问题标题】:Getting error when launching application in Android Oreo在 Android Oreo 中启动应用程序时出现错误
【发布时间】:2018-04-18 07:01:37
【问题描述】:

我面临以下错误:

执行时出错:am start -n “com.package/com.package.SplashActivity”-a android.intent.action.MAIN -c android.intent.category.LAUNCHER 开始: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.package/.SplashActivity 错误类型 3 错误:活动类 {com.package/com.package.SplashActivity} 不存在。错误 启动活动时

那么我该怎么做才能解决这个问题

Android 清单:

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

    <application
        android:name="GoogleAnalyticsApp"
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:largeHeap="true"
        android:theme="@style/MyMaterialTheme">

        <activity
            android:name=".SplashActivity"
            android:screenOrientation="portrait">
            <!-- For Pushwoosh we have to set following code: -->
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <intent-filter>
                <action android:name=".MESSAGE" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.SEND" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="text/plain" />
            </intent-filter>
        </activity>
    </application>
</manifest>

我还添加了清单文件,您可以看到我需要更改的内容,并且我正在使用推送通知。

提前感谢您的帮助。

已编辑:com.company.xyz 包名,在其他 build.gradle 和 manifest 中是相同的

我检查了两个文件是否具有相同的包名称,并且该应用程序正在所有设备中运行,但是当我尝试在 OREO 上运行它时它没有启动活动。

【问题讨论】:

  • 与问题分享您的清单文件
  • 你能在这里添加你的清单吗,以及你是如何将你的 SplashActivity 添加到项目中的??
  • 从 gradle 添加 (android { defaultConfig { ) 部分
  • @ReazMurshed 我的问题有所不同,请再看一遍问题。

标签: android android-8.0-oreo android-8.1-oreo


【解决方案1】:

OP,你找到解决方案了吗?

我在 android o 中使用闪屏时遇到了同样的问题。这是由我在 O 之前使用的自定义主题引起的。您是否为该活动使用自定义主题?

如果是这样,此解决方案可能会对您有所帮助。

自定义主题有这个代码

 <item name="android:windowBackground">@drawable/background_splash</item>

但是 android O 似乎崩溃了,所以试试这个我用来解决我的问题的解决方案

创建一个新值-v26/styles.xml,然后在该xml中添加以下代码

<style name="Splashscreen" parent="Theme.AppCompat.NoActionBar">
    <item name="android:windowSplashscreenContent">@drawable/splashscreen</item>

用你自己的替换背景drawable。

解决方案的全部细节来自 Omkar Amberkar 的 post

【讨论】:

    【解决方案2】:

    确保在您的 SplashActivity 的 android 清单文件中首先调用如下代码..

    <activity
        android:name=".activity.SplashActivity"><!--activity is package name. hear pass your first activity to load app start-->
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
    
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    

    【讨论】:

    • 我认为活动条目已经在清单中。我已经将该问题标记为另一个答案的重复。从我的角度来看,我认为活动包已重命名,并且在导致错误的清单文件中没有适当的反映。请仔细查看错误。
    【解决方案3】:

    Activity class {com.package/com.package.SplashActivity} does not exist.

    我认为您的情况缺少活动类包名称或清单声明以及完全指定的包名称。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-09
      • 2018-03-26
      • 2017-05-07
      • 2020-05-12
      • 1970-01-01
      相关资源
      最近更新 更多