0
센서 값을 기반으로 SMS를 보낼 수 없습니다. 센서 조건에 따라 SMS를 보낼 앱을 개발 중입니다.gps
Sms는 gps 위치와 센서 값으로 구성됩니다.
에뮬레이터에서 gps 값을 null로 설정하면 휴대 전화로 시도 할 때 오류가 발생합니다. 여기
내 코드입니다 (응용 프로그램처럼 정지) : 나는 내 위치 값을 저장하기 위해 공용 변수를 만들어 내가했던 것과 같은 문제를했고 보내는 SMS에 그 변수를 사용public class MainActivity extends Activity implements SensorEventListener , LocationListener {
private SensorManager sensorManager;
TextView xCoor; // declare X axis object
TextView yCoor; // declare Y axis object
TextView zCoor; // declare Z axis object
TextView aCoor;
public static float x;
public static float y;
public static float z;
String theftreport;
String Text;
@Override
public void onCreate(Bundle savedInstanceState)
{
//for sensor
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
xCoor=(TextView)findViewById(R.id.xcoor); // create X axis object
yCoor=(TextView)findViewById(R.id.ycoor); // create Y axis object
zCoor=(TextView)findViewById(R.id.zcoor); // create Z axis object
sensorManager=(SensorManager)getSystemService(SENSOR_SERVICE);
sensorManager.registerListener(this,sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),SensorManager.SENSOR_DELAY_FASTEST);
//for gps
// super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
LocationManager mlocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
LocationListener mlocListener = new MainActivity();
mlocManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, mlocListener);
}
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) { }
@Override
public void onLocationChanged(Location loc) {
loc.getLatitude();
loc.getLongitude();
Text = "My current location is: " +"Latitud =" +
" " + loc.getLatitude() +"Longitud = " + loc.getLongitude();
// Toast.makeText(getApplicationContext(), Text, Toast.LENGTH_SHORT).show();
}
@Override
public void onSensorChanged(SensorEvent event){
// check sensor type
if(event.sensor.getType()==Sensor.TYPE_ACCELEROMETER){
// assign direction
x=event.values[0];
y=event.values[1];
z=event.values[2];
xCoor.setText("X: "+x);
yCoor.setText("Y: "+y);
zCoor.setText("Z: "+z);
if(x>=5)
{
theftreport=Text.toString() + "Crash rate : " + x;
SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage("900XXXXXXX", null, theftreport, null,null);
Toast.makeText(MainActivity.this, "message sent", Toast.LENGTH_LONG).show();
}
}
}
@Override
public void onProviderDisabled(String provider) {
Toast.makeText(getApplicationContext(), "Gps Disabled", Toast.LENGTH_SHORT).show();
}
@Override
public void onProviderEnabled(String provider) {
Toast.makeText(getApplicationContext(), "Gps Enabled", Toast.LENGTH_SHORT).show();
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
// TODO Auto-generated method stub
}
}
@SList 그의 질문에 그는 분명히 안드로이드 플랫폼에있는 앱을 개발한다고 말합니다. 이미 질문을 수정하려고 시도 했으므로 태그를 추가 할 수 있습니다. – Kanth
매니페스트 파일에서 gps 사용 권한을 확인 했습니까? – nayab
그래, 내가 그것을 검사 Nadosh하지만 여전히 가치로 0.0 받고 있어요. 당신은 지금 내가 작동하는 가치 측면에 토스트.하지만 SMS를 보낼 때 그것을 사용하여 값으로 0.0을 반환합니다 .. –