問題タブ [postdelayed]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - SMSの送信を遅らせる ANDROID
現在、データベースにある 300 以上の番号に一括 SMS を送信するアプリをコーディングしようとしています。
それらをすべて一度に送信すると、アプリが強制的に閉じられ、27/308 のようにしか送信できなかったという問題に直面しています。
for ループを使用して SMS を送信しています。
これは、次のステップに進む前に for ループを 1 ~ 2 秒遅らせることができるこの問題の修正ですか?
現在、私はこのコードを試しましたが、20 秒間しかスリープせず、ステップごとに 20 秒ではなく、一度にすべてのステップを実行します。sendSms メソッドをコメントアウトし、println(); でテストしました。
どんな助けでも大歓迎です。
android - Runnable の実行速度が予想よりも遅い
以下のコードに示すように、Android アプリでランナブルを使用してカウントダウン タイマーを更新しています。動作しているように見えますが、タイマーが予想より数秒長くかかることに気付きました。たとえば、3 分間カウントダウンすることになっている場合、3 分 5 秒かかります。メインアクティビティのカウントダウン表示を管理するサービスでタイマーを使ってみました。タイマー/サービスは期待どおりに機能しました。
runnable
/postDelayed()
が正しい時間実行されないのはなぜですか? postDelayed()
タイミングは信頼できますか?はrunnable
変数をデクリメントし、それを使用して with を更新EditText
しsetText()
ます。時間がsetText()
かかりすぎる (ほんの一瞬) ため、runnable
実際に 1.x 秒ごとに実行されますか?
android - handler.postDelayed 対 AlarmManager 対
アプリの 1 つに小さな問題があります。を使用しBroadCastReceiver
て通話が終了したことを検出し、いくつかの簡単なハウスキーピング タスクを実行します。ユーザーが一部のデータを表示できるようにし、通話ログが更新されたことを確認するために、これらは数秒間遅延する必要があります。私は現在handler.postDelayed()
、この目的のために使用しています:
}
ここで、このセットアップが約 90% の確率で機能するという問題があります。約 10% のケースで、通知は削除されません。メッセージキューがメッセージ/ランナブルを処理する前に、スレッドが死んでいると思われます。
私は現在、代替案を考えていますpostDelayed()
が、私の選択肢の 1 つは明らかに AlarmManager です。ただし、パフォーマンスへの影響 (または使用するリソース) についてはわかりません。
おそらく、スレッドが終了する前にすべてのメッセージが処理されたことを確認するより良い方法や、これら 2 ビットのコードの実行を遅らせる別の方法があるでしょう。
ありがとうございました
java - AndroidのJavaで2秒ごとに関数を実行する方法は?
Android プログラムで Java コードのチャンクを 2 秒ごとに実行しようとしています。私のコードは現在次のようになっています。
残念ながら、これは 2 秒後に 1 回だけ実行され、その後は実行されません。2秒ごとに実行するにはどうすればよいですか?
ご協力いただきありがとうございます。
java - postdelayed ハンドラー/ランナブルでの一時停止/待機をキャンセルし、一時停止したコードを引き続きアクティブにする
セットアップ: postdelayed ハンドラーを使用して、さらに 2 つのネストされた postdelay で一時停止する 4 段階のアクティビティがあります。
タイムライン:
stage1 |コードファイア| stage2 |コードファイア| stage3 |コードファイア| ステージ4
ステージ 1: 非アクティブ化、カスタム アラート ダイアログのみを表示
ステージ 2: カウントダウン タイマーを含む、ユーザー向けのビジュアルで非アクティブ化 (ほとんど)
ステージ 3: 2 番目のカウントダウン タイマーで非アクティブ化
ステージ 4: ユーザー インタラクション、カウントダウンや追加の一時停止なし
ユーザーがボタンを押すだけでstage2の最後までスキップできるようにしたい.
両方とそれぞれを個別にキャンセルしようとしましたが、成功しませんでした。使用したコマンドは次のとおりです。
try/catch、または検索でスレッドを使用することへの参照を見ましたが、使用方法や適切かどうかはわかりません。
ご意見ありがとうございます。
**動作しないコードの参照用に編集: * 関連のないもののほとんどをカットしました。追加
android - 遅延通話中のプログレスバーの増加
次のような遅延通話があります。
ただし、完全に機能するプログレスバーがあり、遅延が経過するたびに増加させたいと考えています。では、この問題に対するアプローチは何ですか?これを実装する方法はありますか?
あなたが答えて私を助けるのにかかる時間を感謝します
そのため、回答から何が可能かを調べた後、実行可能を実装する独自のクラスを作成しました。これはこれを実装する可能な方法ですか?私の勘がぐちゃぐちゃになっていないとしたら、ちょっと間違っていると思います。
java - ユーザー文字列を timer.postDelayed にプルする方法
ユーザー文字列を Handler timer.postDelayed に取り込むにはどうすればよいですか?
android - postDelayed を使用して特定の時間にタスクを実行する
特定の時間にタスクを開始したい。そのために、次のように使用runnable
してpostDelayed
メソッドを作成します。
私のコードでは、次のように使用mLunchTask
します。
次のようにmyDelay
計算されます。
およびはユーザーが設定しますdesiredHour
。desiredMinute
期待されるのは、およびおよび 0 秒でMY TASK
開始することです。ただし、「MY TASK は数秒遅れて開始されますが、これはランダムに見えます。desiredHour
desiredMinute
上記のコードに基づいて、正確な時間に開始されない理由はありますか?
ありがとう
java - Handler.removeCallbacks() はコールバックを削除しません - なぜですか?
次の LogCat トレースを考えると、Handler.removeCallbacks()
が (経由でMyListener.cancelTimeout()
)明らかに の前に呼び出されていることがわかりmyTask.run()
ます。
この謎を説明できるものは何でしょうか?
ログの正確なタイムスタンプに注意してください。まったく同じ Runnable オブジェクト (myTask@461cc378) が、postDelayed() からちょうど 0.01 秒後に removeCallbacks() されています。そして、2.01秒後、run()...
これを説明できるものは何ですか?
たとえば、0.01 秒は Android が順序を把握するには短すぎますか?
これをデバッグするためのアイデアは大歓迎です。
java - Java (Android) でプログラムの実行を遅らせるためのベスト プラクティス
Android用のクイズアプリを作っています。
ユーザーは 30 秒間で、できるだけ多くの質問に答えることができます。
ユーザーが問題を正しく理解したかどうかを確認できるように、問題の間に実行時間の小さなギャップを作成します。
30 秒が経過すると、ユーザーは結果画面にリダイレクトされるはずです。ただし、その待機時間中に 30 秒が経過すると、ユーザーは一瞬結果画面に移動し、次の質問にリダイレクトされるだけです。30 秒が経過したら、その待機時間を無効にするにはどうすればよいですか?
簡単な答えになるはずですが、スレッド/実行の操作方法がわかりません。
ありがとう