2011-05-04 3 views
0

안드로이드의 기본 공유 설정 경로는 내 응용 프로그램에서일부 휴대 전화에는 공유 환경 설정 경로가 없습니다.

/data/data/package_name/shared_prefs/package_name_preferences.xml 

이, 나는 백업 옵션 SD 카드에이 파일이 있습니다. 그러나 전화 삼성 갤럭시 S에, 사용자가 자신이 백업에 오류가 있는지 나에게보고

/data/data/package_name/.. 

같은 어떤 경로 나 파일이없는 것 같다. 내가 오류를 체크하면, 나는

을 볼 수

/data/data/xxx.xxxx.xxxx/shared_prefs/xxx.xxxx.xxxx_preferences.xml (No such file or directory) 

어떻게 이런 일이 수 있습니까?

Environment.getDataDirectory().toString() + "/data/xxx.xxxx.xxxx/shared_pref/xxx.xxxx.xxxxx_preferences.xml" 
+0

질문 http://stackoverflow.com/questions/5531289/copy-the-shared-preferences-xml-file-from-data-on-samsung-device-failed의 중복입니다. 삼성 경로에 대한 내 대답을 확인하십시오. –

답변

0

는 백업 클라우드 대신 SD 카드로 이동 있도록 안드로이드 클라우드 백업을 사용하여 재 구현 고려 유무 : 여기

내 코드 경로를 만드는 것입니다? 모든 안드로이드가 같은 경로를 사용 설치하기 때문에

http://developer.android.com/guide/topics/data/backup.html

+0

예, API 레벨 8이 필요하지만 API 레벨 3을 지원합니다 ... – chrisonline

0

당신은 당신의 앱에서 같은 절대 파일 경로를 사용할 수 없습니다.

다음을 사용해보십시오. SharedPreferences settings = getSharedPreferences (xxx.xxxx.xxxx_preferences.xml, 0);

절대적인 주소 지정이 아닌 상대 주소 지정을 사용하여 공유 환경 설정에 액세스하므로 문제를 해결해야합니다.

+0

감사합니다.하지만 절대 경로가 필요합니다. SharedPreferences를 SD 카드에 백업합니다. getSharedPreferences는 경로를 얻지 못하기 때문에 내 문제를 해결하지 못합니다. 그리고 sharedPreference 경로는 항상 Android 설치시 같은 경로에 있습니다 ... 지금까지 내가 아는 한! – chrisonline

0

나는이 같은 공유 기본 설정의 경로를 얻으려고 시도했습니다. 이것은 나를위한 작품입니다.

File f = getDatabasePath("MyPrefsFile.xml"); 

if (f != null) 
    Log.i("TAG", f.getAbsolutePath()); 
관련 문제