2

시나리오 : 내 안드로이드 응용 프로그램이 서버로 작동합니다. 서버에 연결된 N 개의 클라이언트가 있습니다. 사용자가 서버 (android app)에서 구성 할 수있는 클라이언트에 대한 설정이 있습니다. 그래서 기본적으로 각 클라이언트에 소켓을 통해 사용자 기본 설정을 보냅니다. 설정은 모든 클라이언트에서 동일하지만 각 클라이언트의 설정 상태를 유지해야합니다. 설정의여러 기본 설정 파일이있는 PreferenceFragment 다시 사용

설정 : 다음과 같이

Settings 1 
Settings 2 
Settings 3 

지금 사용자가이 클라이언트에 대한 위의 설정을 구성합니다 : 클라이언트 2의 경우

Settings 1 :true 
Settings 2 :false 
Settings 3 :false 

:

Settings 1 :false 
Settings 2 :false 
Settings 3 :false 
CLIENT1의 경우 예를 들어 사용자가 클라이언트 1을 선택하면

이 이제 Android 앱에 포함됩니다. 그러면 client1 특정 세트가 표시되어야합니다.

문제점 : 클라이언트의 현명한 설정 상태를 저장할 수 없습니다.

내 전문 지식 : 나는 안드로이드 프로그래밍의 초급자입니다.

지금까지 진행 : 시나리오에 대한 이해에 따라 클라이언트 별 현명한 different-2 공유 환경 설정 파일을 만들어야합니다. 설정 집합에 대한 일반 기본 설정 조각을 만들었습니다. 설정은 모든 클라이언트에서 동일하므로 기본 설정 조각을 다시 사용하고 있습니다. 또한 선호도가 각 클라이언트에 대해 동적으로 파일을 지정하려고 :

 SharedPreferences sharedPreference = context.getSharedPreferences(
       "<Here I dynamically specify prefs file name>", Context.MODE_PRIVATE); 

을하지만 그것은 작동하지 않습니다.

도와주세요.

답변

5

내 질문에 답하면 미래에 도움이 될 수 있기를 바랍니다. 이 시나리오에서는 다른 2 개의 환경 설정 파일을 만들어야합니다. 특정 환경 설정 파일

getSharedPreferences("preference_file_name", Context.MODE_PRIVATE); 
를로드 나중에

getPreferenceManager().setSharedPreferencesName("preference_file_name"); 

과 : 우리는 다음과 같이이 작업을 수행 할 수 있습니다

관련 문제