在Android Oreo中启动应用程序时出错

时间:2018-04-18 07:01:37

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

我面临以下错误:

  

执行时出错: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 Manifest:

<?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>

我已添加了Manifest文件,因为您可以看到我需要更改的内容,并且我正在使用push进行通知。

感谢您的帮助。

已编辑:com.company.xyz packagename,与其他build.gradle和manifest中的内容相同

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

3 个答案:

答案 0 :(得分: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>

用您自己的背景可替换背景。

该解决方案的详细信息来自Omkar Amberkar的post

答案 1 :(得分:0)

确保您的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>

答案 2 :(得分:0)

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

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