Android 三星Note 3版本4.4.4 ViewRootImpl.SetMultiWindowsScale中的空指针

Android 三星Note 3版本4.4.4 ViewRootImpl.SetMultiWindowsScale中的空指针,android,android-sdk-tools,samsung-mobile-sdk,Android,Android Sdk Tools,Samsung Mobile Sdk,我有一份来自三星Note3和安卓4.4.4用户的报告。它在这里转储: SM-N900P 4.4.4 19 java.lang.NullPointerException at android.view.ViewRootImpl.setMultiWindowScale(ViewRootImpl.java:7992) at android.view.WindowManagerGlobal.setMultiWindowScale(WindowManagerGlobal.java:538)

我有一份来自三星Note3和安卓4.4.4用户的报告。它在这里转储:

SM-N900P 4.4.4 19

java.lang.NullPointerException
    at android.view.ViewRootImpl.setMultiWindowScale(ViewRootImpl.java:7992)
    at android.view.WindowManagerGlobal.setMultiWindowScale(WindowManagerGlobal.java:538)
    at com.android.internal.policy.impl.MultiPhoneWindow.adjustScaleFactor(MultiPhoneWindow.java:1602)
    at com.android.internal.policy.impl.MultiPhoneWindow.access$2300(MultiPhoneWindow.java:107)
    at com.android.internal.policy.impl.MultiPhoneWindow$MultiPhoneDecorView.onAttachedToWindow(MultiPhoneWindow.java:1120)
    at android.view.View.dispatchAttachedToWindow(View.java:13637)
    at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2703)
    at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1533)
    at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1270)
    at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6686)
    at android.view.Choreographer$CallbackRecord.run(Choreographer.java:813)
    at android.view.Choreographer.doCallbacks(Choreographer.java:613)
    at android.view.Choreographer.doFrame(Choreographer.java:583)
    at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:799)
    at android.os.Handler.handleCallback(Handler.java:733)
    at android.os.Handler.dispatchMessage(Handler.java:95)
    at android.os.Looper.loop(Looper.java:146)
    at android.app.ActivityThread.main(ActivityThread.java:5727)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:515)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1291)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107)
    at dalvik.system.NativeStart.main(Native Method)
它不在我的代码中,我不能在模拟器中复制它,因为我不能用4.4.4创建AVD。 使用AVD 4.4.2,它可以正常工作。我在一家商店/商店试用了4.4.2版的物理手机,效果很好。但是,我无法获得4.4.4版本

  • 如何使用4.4.4创建AVD和AVD
  • 为什么谷歌不提供4.4.4 AVD
  • 有人知道如何解决垃圾场吗
  • 我甚至在AOSP中找不到第7992行和方法setMultiWindowsScale
  • 谢谢

    如何使用4.4.4创建AVD和AVD

    Genymotion将让您模拟运行在4.4.4上的三星Note 3

    它支持Eclipse和Android Studio插件,请按照说明安装

    为什么谷歌不提供4.4.4 AVD

    我不知道为什么不是AVD,但他们提供了4.4.4的二进制文件。如果您可以访问Nexus设备,您可能需要再次检查/确认问题仅与三星有关

    有人知道如何解决垃圾场吗

    上面发布的堆栈跟踪看起来像是在应用程序连接到多窗口并缩放视图后引发的异常,或者至少在未引发NPE的情况下它将被缩放。使用此选项检查清单设置以获得多窗口支持,检查最大和最小窗口大小。如果仿真器不工作,并且您无法再现异常,作为最后的手段,请以某种方式联系该用户并进行通信,以再现问题/测试您的解决方案并迭代,直到其修复。祝你好运

    我甚至在中找不到行7992和方法setMultiWindowsScale AOSP


    由于这看起来与三星特定的android.view.ViewRootImpl类实现非常相关,以支持多窗口和其他三星产品,因此我怀疑您是否能找到实际的源代码,除非三星在某处发布了它

    AOSP中没有setMultiWindowsScale(),AVD在这里也没有帮助,因为它是三星定制版Android的一部分。因此,了解问题的唯一方法是查看三星的专有源代码。我也有这个问题。这只发生在Note 3(SM N900P)的Sprint版本上。@theJosh您是否有意为您的应用程序添加多窗口支持?如果是这样,交叉检查您的实现。你能在emulator上重现这个问题吗?@mass我正在使用多窗口支持。我已经购买了Sprint Note 3,我可以重新创建该问题,但仍无法找到确切原因。@powder366您的应用程序中是否使用广告?我用Mopub。但是,我的应用程序的付费版本(无广告版)没有此问题。此问题不会发生在模拟器上。我现在有2台note 3设备用于测试。在Verizon设备上一切正常,但在Sprint设备上总是崩溃。Crashlytics的报告也显示了同样的结果。我不能绝对肯定Sprint和Verizon之间的区别,它仅仅是在硬件还是软件上?是否有机会调试传递给SetMultiWindowsScale方法的参数?例如比例因子或分辨率。我担心这两款手机对该类的实现不同,这可能是根本原因。在这种情况下,也许您应该考虑禁用该特定设备的多窗口支持,直到bug被制造商修复。