지금 제가 브로드캐스트로 컴퓨터와 연결하면
토스트띄우기까지 성공했는데요
문제는 띄우자마자 그냥 sdcard 연결된걸 끊어버리고 싶습니다.
이게 가능할까요..?
가능하다면 어떤 액션을 어떻게 줘야할까요 ㅠㅠ 부탁드립니다.
이 질문 보고 어제 반나절 정도 해봤는데...
일단 제 능력.. 범위 밖의 일이라는게 결론이고.. ㅋ
제가 접근한것 까지만 쓰면
android/os/storage/StorageManager.java
에서 위와 같은 IMountService 를 이용해 마운트 정보를 관리하고 있습니다. mount 되고 unmount 되는 장비의 리스트를 관리하고 있습니다.
그 장비의 리스트는 public StorageVolume[] getVolumeList(); 라는 메소드로 알수 있는데 이건 숨겨져 있어 사용자 모드에서는 사용하기 어렵습니다.
대부분 실무에서는 위와 관련된 메소드를 사용할 수 있도록 플랫폼 단에서 수정해서 사용하고 있습니다.
뭐.. 위에꺼는 SD 카드 볼륨을 갖고오는 즉, mount 지점을 갖고 오기 위한 거고.. 만약 /sdcard/mnt 라고 고정시켜놓고 위의 메소드를 사용하지 않더라도 unmount 부분이 있는 IMountService 를 쓸려고 해도 역시 숨겨져서 안되더군요.
refection 을 사용도 해보고 native 로 추상클래스 만들어서도 해보고 했는데 사용자 모드로 만들어진 폰에서는 안됩니다.
방법이 있다면 관련 폰에 들어가는 이미지에 preload 된 형태로 들어가는... 즉, 빌드 될때 포함되는 형태의 앱에서는 가능합니다.
처음 부트 들어가있는 앱 같은거죠
그렇게 preload 형태로 들어가 있으면 refection 혹은 native 를 참조하는 껍데기 클래스를 만들어 접근이 가능합니다.
그러면 unmount 도 접근도 가능 할것으로 생각합니다.
로그인 유지
이 질문 보고 어제 반나절 정도 해봤는데...
일단 제 능력.. 범위 밖의 일이라는게 결론이고.. ㅋ
제가 접근한것 까지만 쓰면
android/os/storage/StorageManager.java
에서 위와 같은 IMountService 를 이용해 마운트 정보를 관리하고 있습니다. mount 되고 unmount 되는 장비의 리스트를 관리하고 있습니다.
그 장비의 리스트는 public StorageVolume[] getVolumeList(); 라는 메소드로 알수 있는데 이건 숨겨져 있어 사용자 모드에서는 사용하기 어렵습니다.
대부분 실무에서는 위와 관련된 메소드를 사용할 수 있도록 플랫폼 단에서 수정해서 사용하고 있습니다.
뭐.. 위에꺼는 SD 카드 볼륨을 갖고오는 즉, mount 지점을 갖고 오기 위한 거고.. 만약 /sdcard/mnt 라고 고정시켜놓고 위의 메소드를 사용하지 않더라도 unmount 부분이 있는 IMountService 를 쓸려고 해도 역시 숨겨져서 안되더군요.
refection 을 사용도 해보고 native 로 추상클래스 만들어서도 해보고 했는데 사용자 모드로 만들어진 폰에서는 안됩니다.
방법이 있다면 관련 폰에 들어가는 이미지에 preload 된 형태로 들어가는... 즉, 빌드 될때 포함되는 형태의 앱에서는 가능합니다.
처음 부트 들어가있는 앱 같은거죠
그렇게 preload 형태로 들어가 있으면 refection 혹은 native 를 참조하는 껍데기 클래스를 만들어 접근이 가능합니다.
그러면 unmount 도 접근도 가능 할것으로 생각합니다.