0

Android アプリで Samsung Spen Sdk を使用しようとしていますが、アプリがフリーズすることがあります。

参考までに、サンプルコードを GitHub にアップロードしました (下のリンク)。アプリは、SCanvasView を含むアクティビティを起動します。新しいアクティビティが読み込まれる前に、ユーザーが起動ボタンを複数回クリックすると、問題が発生します。サンプル コードを実行し、[Launch Act] ボタンをすばやくタップすると、新しいアクティビティが正常に読み込まれます。ただし、そのアクティビティを終了すると、アプリはフリーズします。

これを修正する方法について何かアドバイスはありますか?

Galaxy Note8.0を使用しています。& SペンSDK 2.3

サンプル コードを含む Github URL: https://github.com/agent8261/SamsungANR

デバイスからの /data/anr/traces.txt:

"main" prio=5 tid=1 SUSPENDED
  | group="main" sCount=1 dsCount=0 obj=0x414479a0 self=0x41437880
  | sysTid=23931 nice=0 sched=0/0 cgrp=apps handle=1074111964
  | state=S schedstat=( 7243993289 957593782 55659 ) utm=305 stm=418 core=3
  at java.lang.VMThread.sleep(Native Method)
  at java.lang.Thread.sleep(Thread.java:1031)
  at java.lang.Thread.sleep(Thread.java:1013)
  at com.samsung.sdraw.AbstractModeContext.dispose(SourceFile:603)
  at com.samsung.sdraw.CanvasView.dispose(SourceFile:2545)
  at com.samsung.sdraw.CanvasView.onDetachedFromWindow(SourceFile:643)
  at android.view.View.dispatchDetachedFromWindow(View.java:12796)
  at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2753)
  at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2753)
  at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2753)
  at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2753)
  at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2753)
  at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2753)
  at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2753)
  at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:2753)
  at android.view.ViewRootImpl.dispatchDetachedFromWindow(ViewRootImpl.java:3115)
  at android.view.ViewRootImpl.doDie(ViewRootImpl.java:4815)
  at android.view.ViewRootImpl.die(ViewRootImpl.java:4798)
  at android.view.WindowManagerGlobal.removeViewLocked(WindowManagerGlobal.java:355)
  at android.view.WindowManagerGlobal.removeView(WindowManagerGlobal.java:305)
  at android.view.WindowManagerImpl.removeViewImmediate(WindowManagerImpl.java:88)
  at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3574)
  at android.app.ActivityThread.access$1300(ActivityThread.java:150)
  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1333)
  at android.os.Handler.dispatchMessage(Handler.java:99)
  at android.os.Looper.loop(Looper.java:137)
  at android.app.ActivityThread.main(ActivityThread.java:5279)
  at java.lang.reflect.Method.invokeNative(Native Method)
  at java.lang.reflect.Method.invoke(Method.java:511)
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)
  at dalvik.system.NativeStart.main(Native Method)
4

1 に答える 1

0

原因はわかりませんが、SCanvasInitializeListener で SCanvasView.setFingerControlPenDrawing() が false ではなく true に設定されていることを確認することで修正できました。

どうやら SCanvasView クラスは、デフォルトで指の描画が有効になっている状態で開始することはできません。

于 2014-04-30T16:18:34.747 に答える