そのため、メイン クラス/アクティビティにハンドラーを持つアプリケーションを作成しています。メモリリークを防ぐために static を宣言する必要があるという警告が表示されました。
そのため、問題を説明するいくつかの記事を読み、それを理解していることを知っています(そして、ハンドラーを静的に変更し、弱参照を使用するようにしました)。
しかし、ここで問題が発生します。
特定の非静的変数を変更する (またはそれを行うメソッドを呼び出す) には、ハンドラーが必要です。これらの vars を static として宣言するのはあまり意味がありません (クラス自体ではなく、メイン クラスのインスタンスに属している必要があります)。
どうすればいいですか?
誰かがメイン クラスのインスタンスを作成し、それを使用して非静的変数の値を変更したり、非静的メソッドを呼び出したりするコード ブロックを既に見ました。その新しいインスタンスを作成し、そのインスタンスから変数を使用するとき、私のプログラムは、以前のプログラムと同じ「myInt」または「myString」について話していることをどのように知ることができるので、私には非常に奇妙に思えます。
これが意味をなさない場合、またはうまく説明していない場合は、私がまだ初心者であることを許してくださいb