21

我的股票报价应用程序出现运行时错误。我有一个应用程序,您可以在其中输入您的股票(如股票市场)代码,然后用两个按钮列出它。一个按钮显示报价,另一个按钮查看来自网络的更多信息。网络功能很好,但是当我点击报价按钮时应用程序崩溃了。

LogCat 询问我是否在我的AndroidManifest.xml. 我对 Android 开发还是新手,所以这是我可以分析问题的最好方法。我不确定在哪里寻找这些错误。

如果您需要测试修复,只需使用“mstf”作为股票代码。

你可以在这里找到我的应用程序:https://github.com/xamroc/StockQuote/tree/bug-quote

我也很感激有关 Android 调试工具或技术的任何提示。

4

6 回答 6

37

您的包中有两个活动,但在清单中只声明了一个。

声明另一个 Activity 类:

将此添加到您的清单中:

<activity
     android:name="com.example.stockquote.StockInfoActivity"
     android:label="@string/app_name" />
于 2013-10-01T17:37:13.577 回答
17

将其插入<activity android:name=".StockInfoActivity" ></activity>您的 AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.stockquote"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="9"
        android:targetSdkVersion="18" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.stockquote.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name="com.example.stockquote.StockInfoActivity" >
        </activity>
    </application>

于 2013-10-01T17:36:52.187 回答
1

您的 Activity 意味着您必须在 android manifest 中声明您的每个类,以便将它们识别为 Activity。因此,在 Activity main 结束后,您可以执行以下操作:

<activity
 android:name=".YourClassNAME"

/>

于 2016-06-16T03:49:20.987 回答
1

您应该通过将launchMode 定义为singleTask 或singleInstance.example 在清单xml 中声明活动:

<activity android:name="com.example.h.myapplication.MainActivity" 
          android:launchMode="singleTask" >

在此处输入图像描述

于 2016-09-01T14:53:43.857 回答
1

来源:http: //developer.android.com/guide/components/activities.html

您必须在清单文件中声明您的活动,以便系统可以访问它。要声明您的活动,请打开清单文件并添加一个<activity>元素作为该元素的子 <application>元素。例如:

<manifest ... >
  <application ... >
      <activity android:name=".ExampleActivity" />
      ...
  </application ... >
  ...
</manifest >

您可以在此元素中包含几个其他属性,以定义诸如活动标签、活动图标或用于设置活动 UI 样式的主题等属性。

android:name 属性是唯一需要的属性——它指定了活动的类名。发布应用程序后,不应更改此名称,因为这样做可能会破坏某些功能,例如应用程序快捷方式。

于 2015-11-27T21:05:50.947 回答
1

因此,当您创建一个新类时,您必须在应用程序标签内的“AndroidManifest.xml”文件中创建一个活动,如下所示:

`

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity android:name=".mainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".loginActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

`

于 2019-05-10T10:12:48.953 回答