問題タブ [android-sharedpreferences]
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 - サービスの onDestroy に保存されない SharedPreferences
アクティビティが終了する前 ( が呼び出されたとき)、いくつかの値OnDestroy
を に保存しています。 int
SharedPreferences
しかし、私が気付いたのは、値が保存されるのに約1秒かかることですが、アプリはそれを待ってからActivity
.
Wait
殺される前に何かできることはありますか?
これが私の例です:
======================>> 編集 <<======================
私は間違いを犯し、これはあると言いましたActivity
が、そうではありません。サービスonDestroy
のを呼び出していますが、残念ながらそこをオーバーライドする方法はありません...onPause
android - SharedPreferences を使用した文字列の表示が機能しない
strings.xml
から文字列を取得し、それをSharedPreferences
に表示するメソッドを作成しましたTextView
。エラーレポートはありませんが、TextView
何も表示されません。に問題はありSharedPreferences
ますか? 文字列とTextView
は正しいです。
android - カスタム クラスはシングルトンの目的でアプリケーションを拡張します
SharedPreferences からいくつかの値を取得するカスタム クラスを作成しようとしました。私の目標は、どのクラスからでもその値に到達することです。
null ポインター例外が発生しています
私のコードは次のとおりです。
何が間違っている可能性がありますか?
android - 更新時に sharedpreferences フィールドを消去する方法、または sharedpreferences フィールド タイプが変更されたかどうかを確認する方法
編集:
私の検索では、SharedPreferences を消去しない方法、または設定を新しい値 (空白/null/0 など) で編集する方法に関する結果しか得られません。
私の更新中に、いくつかの変数の名前が変更/置換/移動されました...
では、更新の変更を想定して、設定で Google Play の更新要求データの変更を強制するにはどうすればよいですか? ユーザーが古いコンテンツが存在する場合は入力しないようにしたいのですが、設定全体が削除されるという状態を考えると。
例:
v1 "MainActivity".preference = String "Name" Boolean "something"
v2 "MainActivity".preference = String "Name" Char "something"
そのため、アップデート v2 では、何かをドロップしてから再度追加する間、全体の設定を維持する必要があります。
Intent."ACTION_PACKAGE_REPLACED"を使用してから、アプリケーション上のすべてを手動で消去するのが「応急処置」のようですが、アプリケーションのアンインストールを要求する方法はありますか (したがって、ハードディスク以外のすべてのファイルを忘れた場合)、再度インストールしてから、実行を要求しますか?
私が知る限り、Kitkat 以降では、新しいインストールを手動で開く必要があります。
私のプロジェクトは現在ベータ段階にあり、ここでの更新は一般的です。私が望むのは、受信したログがすべて最新のものであることを確認することですが、アプリケーションが更新されていない場合、ログには古いコンテンツが含まれているはずです...
android - トークンを使用した Android WebView はアカウントにアクセスできません
WebView を介して自分の Web サイトにアクセスしようとしていますが、ユーザーに WebView を表示する前に、ユーザー名とパスワードを入力する必要があります。その後、アカウント ダッシュボードを WebView に表示できます。問題は、実際には auth_token を保持して SharedPreferences に保存できることですが、このユーザーが既にログインを行っており、auth_token を既に持っていることを webview にどのように伝えることができますか? ユーザーが私のAndroidアプリを使用している間、ユーザーがウェブサイトを使用できるようにします。これがコードです: public class Login_Page extends Activity{ private SharedPreferences mPreferences;
android - Android Shared Preference ストレージを繰り返し使用するとパフォーマンスに影響しますか?
私のアプリケーションは、Android サービスで LocationListener を使用して、頻繁に場所を更新します。アプリケーションには、共有設定に保存されている場所フィルター関連のデータがいくつかあります。要件は、可能な限り頻繁に位置情報の更新を取得することです。リスナーの onLocationChanged で Shared Preference からデータを取得します。これは私のコードです
上記のコードを使用すると、 sharedPreference が繰り返し使用されます。
フィルター変数を onLocationChanged の外側に配置しようとしましたが、サービスを再起動すると値が失われ、ゼロに設定されます。
私はただ知りたいのですが、それは良い習慣ですか?別のオプションを使用する必要がありますか?