0

興味深いシナリオに遭遇しました。msdnフォーラムの誰かによってここにも存在します

アプリケーションを起動するときに、画面をロックするか、その時点でコールが着信し、それぞれのシナリオでコールのロックを解除または切断した後に再開すると、アプリケーションがクラッシュして 0x8000ffff エラーがスローされます。emailcomposetaskこれは、アプリケーションから が開いているときにも発生します。

以前は、Obscured と Unobscured を扱っていなかったからだと思っていました。しかし、私がそれらを処理している今でも、同じケースを受け取っています。他の多くのアプリケーションもクラッシュすることを確認しましたが、Facebook や Twitter など、クラッシュを処理できるアプリケーションがいくつかあります。これと同じ状況に直面した人はいますか?これを修正してください。

私は何か間違ったことをしていますか?

また、デフォルトの読み込みページを変更したことにも注意してください。mainPage.xaml ではなく xyz.xaml で、トークンをチェックし、ボタンをクリックせずに自動的にユーザーを mainPage にリダイレクトします。

編集:StackTraceを追加

at Microsoft.Phone.Execution.NativeEmInterop.NotifyFullObscurityChanged(Boolean isObscured)
at Microsoft.Phone.Shell.PhoneApplicationService.OnFullObscurityChanged(Object sender, LockStateChangeEventArgs e)
at Microsoft.Phone.Shell.Interop.ShellPageManager.ShellPageCallback_OnLockStateChange(Object source, LockStateChangeEventArgs e)
at Microsoft.Phone.Shell.Interop.ShellPageCallback.FireOnLockStateChange(Boolean fLocked)`
4

1 に答える 1

0

これは主にOnNavigatedTo()Page_Loaded()イベント ハンドラーのコードが原因で発生します。ブレーク ポイントを配置し、これら 2 つの方法で問題を確認します。

あなたが言及したケースでアプリが再開されると、これら2つのメソッドが同じ順序で呼び出されます。

これで問題が解決することを願っています。

コメントに基づいて更新します。

そこにいます。ナビゲーション履歴全体をクリアしているため、現在どこに移動すればよいかわかりません (現在のページが削除されていても)。

私の提案は、バック ヒストリ削除コードを OnNavigated から Page_Loaded イベントに移動することです。

于 2012-09-17T18:08:52.317 に答える