블루투스에서 수신 한 센서 값을 사용하는 학교 프로젝트 용 코드를 쉼표로 구분 된 데이터 로그 파일에 작성하려고합니다. 수십 가지 예제를 시도한 후에 Jelly Bean에서 실행되는 파일 쓰기 기능의 간단한 예제를 얻을 수 없습니다. 이 코드는 안드로이드 4.0.2를 실행하는 개인 장치에서 완벽하게 작동합니다. 다음 예제를 motorola xt1060에서 실행하려고합니다. 이동식 sd 카드는 없지만 외부 저장 장치 사용을 배제하지는 않습니다. 필자는 MTPFS와 함께 리눅스와 윈도우즈를 기본 드라이버와 함께 사용하여 파일 시스템 어디에서나 파일을 찾았지만 스스로 표시하지는 않았습니다. 터미널을 통해 마운트 된 MTPFS를 사용하여 텍스트 파일을 만들 때 텍스트 파일을 볼 수 있으며 사진을 찍을 때 MTP가 문제를 일으키는 것으로 생각하지 않습니다.Android 4.2에서 로그 파일에 쓰기가 작동하지 않습니다. 젤리 빈
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
그리고 내가 볼 수있는 흥미로운 아무것도 :
이import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);
path.mkdirs();
File file = new File(path, "test.txt");
Log.d("FILE_TEST", file.getPath());
try {
Log.d("FILE_TEST", "Creating buffer");
BufferedWriter buf = new BufferedWriter(new FileWriter(file));
Log.d("FILE_TEST", "Writing to buffer");
buf.write("Hello FS!\n");
Log.d("FILE_TEST", "Flushing buffer");
buf.flush();
Log.d("FILE_TEST", "Closing file");
buf.close();
} catch (IOException e) {
Log.d("FILE_TEST","Caught Exception:" + e.toString());
}
}
}
매니페스트 XML은 다음과 같은 포함 : 여기
은 가장 간단한 자바 4.0에서 작동 내가 작성한 예를하지 4.2 로그에서 발생합니다 :02-18 00:26:36.075: I/InputReader(859): Reconfiguring input devices. changes=0x00000004
02-18 00:26:36.075: I/InputReader(859): Device reconfigured: id=6, name='synaptics_dsx_i2c', size 720x1280, orientation 3, mode 1, display id 0
02-18 00:26:36.533: I/SurfaceFlinger(290): triggers: (post: 0:16) (compose: 0:2) (frame: 0:12) (gap: 411:6519) (rate: 247) (66116 frames)
02-18 00:26:36.561: I/SurfaceFlinger(290): triggers: (jitter: 0:0) (missed: 0) (105353 vsyncs)
02-18 00:26:37.045: I/ActivityManager(859): Config changes=480 {1.0 311mcc480mnc en_US ldltr sw360dp w360dp h567dp 320dpi nrml port finger -keyb/v/h -nav/h s.23?spn}
02-18 00:26:37.051: I/InputReader(859): Reconfiguring input devices. changes=0x00000004
02-18 00:26:37.051: I/InputReader(859): Device reconfigured: id=6, name='synaptics_dsx_i2c', size 720x1280, orientation 0, mode 1, display id 0
02-18 00:26:37.101: W/ContextImpl(1155): Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcast:1115 android.content.ContextWrapper.sendBroadcast:338 com.motorola.motocare.util.TriggerHelper$TriggerBuilder.send:76 com.motorola.motocare.internal.frameworkevents.PauseResumeTrigger.handleFrameworkEvent:53 com.motorola.motocare.internal.frameworkevents.FwEventMonitor$FrameworkListener.processFrameworkEvent:114
02-18 00:26:37.124: I/SurfaceFlinger(290): triggers: (post: 0:16) (compose: 0:2) (frame: 0:12) (gap: 411:6520) (rate: 247) (66124 frames)
02-18 00:26:37.127: D/FILE_TEST(19084): /storage/emulated/0/Download/test.txt
02-18 00:26:37.127: D/FILE_TEST(19084): Creating buffer
02-18 00:26:37.127: D/FILE_TEST(19084): Writing to buffer
02-18 00:26:37.127: D/FILE_TEST(19084): Flushing buffer
02-18 00:26:37.127: D/FILE_TEST(19084): Closing file
02-18 00:26:37.186: I/SBar.NetworkController(1008): onReceive: Intent.ACTION_CONFIGURATION_CHANGED Received
02-18 00:26:37.186: I/SBar.NetworkController(1008): updateTelephonySignalStrength: No service
02-18 00:26:37.290: I/SurfaceFlinger(290): triggers: (post: 0:16) (compose: 0:2) (frame: 0:12) (gap: 411:6522) (rate: 247) (66132 frames)
02-18 00:26:37.718: I/SurfaceFlinger(290): triggers: (post: 0:16) (compose: 0:2) (frame: 0:12) (gap: 411:6522) (rate: 247) (66159 frames)
02-18 00:26:37.743: I/InputReader(859): Reconfiguring input devices. changes=0x00000004
02-18 00:26:37.743: I/InputReader(859): Device reconfigured: id=6, name='synaptics_dsx_i2c', size 720x1280, orientation 1, mode 1, display id 0
02-18 00:26:37.744: I/ActivityManager(859): Config changes=480 {1.0 311mcc480mnc en_US ldltr sw360dp w598dp h335dp 320dpi nrml land finger -keyb/v/h -nav/h s.24?spn}
02-18 00:26:37.776: W/ContextImpl(1155): Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcast:1115 android.content.ContextWrapper.sendBroadcast:338 com.motorola.motocare.util.TriggerHelper$TriggerBuilder.send:76 com.motorola.motocare.internal.frameworkevents.PauseResumeTrigger.handleFrameworkEvent:53 com.motorola.motocare.internal.frameworkevents.FwEventMonitor$FrameworkListener.processFrameworkEvent:114
02-18 00:26:37.817: I/SurfaceFlinger(290): triggers: (post: 0:16) (compose: 0:2) (frame: 0:12) (gap: 411:6523) (rate: 247) (66164 frames)
02-18 00:26:37.829: I/SurfaceFlinger(290): triggers: (jitter: 0:0) (missed: 0) (105404 vsyncs)
누구나 이것이 4.0 및 아니오에서 작동하는 이유를 알고 있습니까? t 4.2?
코드가 4.3에서 제대로 작동하는 것 같습니다. 장치 자체에서 파일 탐색기로 파일을 찾을 수 있습니까? – ThaMe90
프로젝트를 위임 한 교수가 데이터 요금제를받지 못했고 Wi-Fi를 사용하더라도 데이터 연결없이 Google Play에 등록 할 수있는 방법을 찾지 못했습니다. 나는 거기에 아무것도 없다고 확신하지만, 나는 수동으로 다운로드 파일에 텍스트 파일을 넣었고 나는 리눅스와 윈도우 탐색기에서 MTPFS와 gmtp를 볼 수 있었다. – user1056153
이것은 MTP 가시성 문제와 비슷합니다 (여기서는 다소 불완전 함). http://stackoverflow.com/questions/18292694/files-created-on-external-storage-do-not-show-up- 장치가 장착 된 상태 일 때 –