【问题标题】:onCreate not called when switching to Huawei phone切换到华为手机时未调用onCreate
【发布时间】:2017-12-01 17:14:11
【问题描述】:

我有一个非常简单的应用程序,其 Activity 为空。我只是在另一部手机上尝试过(准确地说是华为 P8 Lite 2017),而且似乎 onCreate 从未出现在 logcat 中。这是活动的代码(通过向导创建的“空活动”应用程序,使用 android studio,最近收到了重大更新)。

package com.test.test;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Log.v("foo","OnCreate");
    }
}

在我尝试过的所有其他手机上,它在 logcat 中显示良好。在这部手机上,我收到了一堆信息/错误消息(像往常一样,我会说,但消息有些不同),没有“OnCreate”。
例如,它适用于 Galaxy S7(运行“7.0”,就像 P8 Lite 2017 一样)。

是否有任何 adb 设置可以对我隐藏此日志?可能是什么问题?

【问题讨论】:

  • 如果你放一个断点,它会被命中吗?显示您的清单文件。您是否将 MainActivity 正确配置为启动意图和默认值?
  • 似乎将所有内容记录为 Info Log.i("foo","onCreate") 会显示消息。我在手机中找不到禁用详细日志记录的设置。

标签: android


【解决方案1】:

根据 ישו אוהב אות 的评论,这似乎是华为的一项功能:默认情况下禁用某些(大多数?)日志。 Huawei, logcat not showing the log for my app? 中描述的方法对我有用(菜单与答案中的略有不同,请参阅 cmets)。

现在详细日志显示在 logcat 之外。

编辑:经过进一步测试,日志激活功能在这款手机(可能是其他华为手机)上似乎非常不稳定。我一直无法清楚地理解是什么使它起作用,什么不起作用。我目前正在使用Log.i 解决方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多