lars
- Forum-Beiträge: 20
10.10.2012, 21:03:25 via Website
10.10.2012 21:03:25 via Website
Hallo zusammen,
ich versuche eine Variable aus einer Activity an einen AsyncTask zu übergeben.
Das gelingt mir leider nicht. Ich mache folgendes:
Hier der ganze Code:
StartActivity
PostDataActivity
Wie übergebe ich die variablen richtig?
ich versuche eine Variable aus einer Activity an einen AsyncTask zu übergeben.
Das gelingt mir leider nicht. Ich mache folgendes:
1static String latitude;
2...
3double longitude = gps.getLongitude();
4...
5nameValuePairs.add(new BasicNameValuePair("lat", StartActivity.latitude));
2...
3double longitude = gps.getLongitude();
4...
5nameValuePairs.add(new BasicNameValuePair("lat", StartActivity.latitude));
Hier der ganze Code:
StartActivity
1public class StartActivity extends Activity {
2
3 Button btnShowLocation;
4 static String latitude;
5
6 // GPSTracker class
7 GpsData gps;
8
9 @Override
10 public void onCreate(Bundle savedInstanceState) {
11 super.onCreate(savedInstanceState);
12 setContentView(R.layout.main);
13
14 btnShowLocation = (Button) findViewById(R.id.ansehen);
15
16 // show location button click event
17 btnShowLocation.setOnClickListener(new View.OnClickListener() {
18
19 @Override
20 public void onClick(View arg0) {
21 // create class object
22 gps = new GpsData(StartActivity.this);
23
24 // check if GPS enabled
25 if(gps.canGetLocation()){
26
27 double latitude = gps.getLatitude();
28 double longitude = gps.getLongitude();
29 //latitude.setText(String.valueOf(latitude));
30
31 // \n is for new line
32 new PostDataActivity().execute();
33 Toast.makeText(getApplicationContext(), "Your Location is - \nLat: " + latitude + "\nLong: " + longitude, Toast.LENGTH_LONG).show();
34...
2
3 Button btnShowLocation;
4 static String latitude;
5
6 // GPSTracker class
7 GpsData gps;
8
9 @Override
10 public void onCreate(Bundle savedInstanceState) {
11 super.onCreate(savedInstanceState);
12 setContentView(R.layout.main);
13
14 btnShowLocation = (Button) findViewById(R.id.ansehen);
15
16 // show location button click event
17 btnShowLocation.setOnClickListener(new View.OnClickListener() {
18
19 @Override
20 public void onClick(View arg0) {
21 // create class object
22 gps = new GpsData(StartActivity.this);
23
24 // check if GPS enabled
25 if(gps.canGetLocation()){
26
27 double latitude = gps.getLatitude();
28 double longitude = gps.getLongitude();
29 //latitude.setText(String.valueOf(latitude));
30
31 // \n is for new line
32 new PostDataActivity().execute();
33 Toast.makeText(getApplicationContext(), "Your Location is - \nLat: " + latitude + "\nLong: " + longitude, Toast.LENGTH_LONG).show();
34...
PostDataActivity
1public class PostDataActivity extends AsyncTask<Void, Void, Void>{
2
3 // GPSTracker class
4 GpsData gps;
5
6 @Override
7 protected Void doInBackground(Void... params) {
8
9 HttpClient httpClient = new DefaultHttpClient();
10 HttpPost httpPost = new HttpPost("http://blabla.de");
11 List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
12 nameValuePairs.add(new BasicNameValuePair("lat", StartActivity.latitude));
13...
2
3 // GPSTracker class
4 GpsData gps;
5
6 @Override
7 protected Void doInBackground(Void... params) {
8
9 HttpClient httpClient = new DefaultHttpClient();
10 HttpPost httpPost = new HttpPost("http://blabla.de");
11 List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
12 nameValuePairs.add(new BasicNameValuePair("lat", StartActivity.latitude));
13...
Wie übergebe ich die variablen richtig?
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.