2015-01-16 7 views
0

나는 android/java 프로그래밍에 익숙하지 않고 심볼 getContext을 확인할 수 없다는 오류가 발생하여 사진을 내 갤러리에서 사진에 저장하려고합니다. 전화 기본 외장형 스토리지.기호를 확인할 수 없습니다. getContext

public class ContextGetter extends Application { 

    private static Context context; 

    public void onCreate(){ 
     super.onCreate(); 
     context = getApplicationContext(); 
    } 

    public static Context getAppContext() { 
     return context; 
    } 
} 

당신이 Context 단지를 받으십시오 :

public void saveImage(){ 
    String fileName="Site" + System.currentTimeMillis(); 
    ContentValues values=new ContentValues(); 
    values.put(MediaStore.Images.Media.TITLE,fileName); 
    values.put(MediaStore.Images.Media.DATE_ADDED,System.currentTimeMillis()); 
    values.put(MediaStore.Images.Media.MIME_TYPE,"image/jpg"); 
    Uri uri=getContext().getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,values); 
    try { 
     OutputStream outStream=getContext().getContentResolver().openOutputStream(uri); 
     bitmap.compress(Bitmap.CompressFormat.JPEG,100,outStream); 
     outStream.flush(); 
     outStream.close(); 
     Toast message=Toast.makeText(getContext(),R.string.message_saved,Toast.LENGTH_SHORT); 
     message.setGravity(Gravity.CENTER,message.getXOffset()/2,message.getYOffset()/2); 
     message.show(); 
    } 
    catch ( IOException ex) { 
     Toast message=Toast.makeText(getContext(),R.string.message_error_saving,Toast.LENGTH_SHORT); 
     message.setGravity(Gravity.CENTER,message.getXOffset()/2,message.getYOffset()/2); 
     message.show(); 
    } 

답변

2

나는 조언이 클래스 같은 것을 만들 : 사람이 오류와 함께 나를 도울 수 있다면 나는 어떤 입력에 대해 매우 감사하게 될 것입니다 getAppContext() 방법을 사용하십시오. 매니페스트에서 일부 내용을 변경해야합니다 그런데

:

<application 
     android:name=".ContextGetter" 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 

을 그리고 application 태그 안에 다른 모든 내용을 추가