记录不工作(或似乎删除一些行)

时间:2013-03-14 12:50:59

标签: android android-service android-logcat

编辑:这个问题的一个更加磨练的版本,答案很好,位于:Rather odd behaviour of Log

编辑:(奇异)解决方案报告如下。

我有一个服务作为应用程序的一部分运行得相当好,虽然有一些不寻常的行为,我试图理解。为此,我将Log.d语句放在类的各种方法中,以便在各个点报告状态信息。所有这些似乎都在工作(即报告信息),但服务类除外。我知道该服务已启动,因为(a)它执行了某些操作,(b)它实例化的线程正在发出Log.d消息。然而,即使在开始时:

@Override
public void onCreate() {
    super.onCreate();
    Log.d("SMS", "onCreate()");
    onCreateReal();
}

此日志消息永远不会出现。我可能做错了什么?

清单如下:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.stuff.myapp"
android:versionCode="1111111"
android:versionName="0.1" >

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="16" />
<uses-permission android:name="android.permission.INTERNET"/>

<application
    android:allowBackup="true"
    android:icon="@drawable/icon"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >

    <activity
        android:name="com.stuff.myapp.Core"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

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

    <service android:name="MyService"></service>

    <receiver android:name="com.stuff.myapp.WidgetInitiator">
        <intent-filter>
            <action android:name="android.appwidget.action.APPWIDGET_UPDATE"/>
        </intent-filter>
        <meta-data android:name="android.appwidget.provider" android:resource="@xml/widget_information"/>
    </receiver>

    <activity android:name="com.stuff.myapp.ConfigWidgetActivity"
         android:theme="@android:style/Theme.Translucent">
    </activity>
</application>

[编辑:另一个观察] 作为应用程序的一部分,我每2分钟调用一次BroadcastReceiver类(在测试中)。该类是独立的(即不在任何其他类中)。它每次由AlarmManager调用时都会执行Log.d。但只有一些Log调用才能使它成为logcat。同样,建议欢迎这里可能发生的事情。

[编辑:我已经纠正了上述情况,因为它实例化的线程报告日志调用正确,但它实例化的类没有。]

2 个答案:

答案 0 :(得分:1)

我已经做了很多工作来解决潜在的问题(参见Service being re-Created by AlarmManager),但我仍然遇到了这个问题。该服务仍然没有记录。没有理由我可以解释,改变TAG从&#34; SMS&#34;到&#34; SMservice&#34;使它工作。除了似乎解决问题之外,我无法提供任何好的解释。

并且,为了节省您的要求,如果我将TAG更改回&#34; SMS&#34;消息再次消失。

答案 1 :(得分:0)

你应该在logcat中使用“tag:SMS”作为过滤器。