私は、ユーザーがアプリケーションをアンインストールするか、携帯端末をオフにするまで、常に実行されているBluetoothアプリを開発しています。エラーメッセージが表示されます。「残念ながら、アプリは動作を停止しました。私の最初の研究から、これはメモリリークの問題のようです。これまでは、静的参照を持つオブジェクトがメモリをリークすることが分かっています。だから私は変数の静的な参照を削除する必要があります。私のプロジェクトには多くの定数がありますが、public static finalを使用せずにどのように定数を書くことができますか?パブリックstatic finalを使用せずにAndroidで定数を宣言する方法
現在、私はこのようなものを使用しています:
public static final int NOTIFICATION_ID=1234;
更新
私は私の質問はので、ここでいくつかのより多くの情報を必要だと思い、それである
プライベート静的変数問題 1)こんにちはフレンズ、私のアプリはデータベースを使用して各テーブルは7~13の列を持っているので、私は のように宣言している列の名前は、静的な最終的な文字列COLUMN_N AME_ACTIVE = "アクティブ"; 同様に70以上の静的変数が宣言されています。 2)事例のいくつかは、私が 3)1 utilのクラスを宣言した別のクラスにアクセスするためには、インターフェースクラスを作成し、そこに
public interface Constants{
String Name="AAA";
String Age="20";
}
を変数を定義し、このようにそれを使用する静的クラス
クラスを定義する代わりに、インターフェイスを使用してください。 – akhilesh0707
静的最終定数はここで問題にはなりません。彼らはいくらかの記憶を取りますが、起動時にすべて割り当てられ、その後は決して移動しません。もっと複雑な問題があるかもしれません。 https://stackoverflow.com/questions/6470651/creating-a-memory-leak-with-java – litelite
"現在、私は静的final finalと同じように使用しています。NOTIFICATION_ID = 1234;"それはメモリリークではありません。 "私が検索したときに、これがメモリリークの問題であることがわかった" - あなたは 'OutOfMemoryError'を得ていない限り、メモリリークからクラッシュしません。 – CommonsWare