• LocationActivity


    package com.baidu.location.demo;

    import com.baidu.baidulocationdemo.R;
    import com.baidu.location.BDLocation;
    import com.baidu.location.BDLocationListener;
    import com.baidu.location.Poi;
    import com.baidu.location.service.LocationService;
    import com.baidu.location.service.MyLocationService;

    import android.app.Activity;
    import android.app.ActivityManager;
    import android.app.AlertDialog;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.os.Bundle;
    import android.text.method.ScrollingMovementMethod;
    import android.util.Log;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.TextView;


    import android.content.ContentValues;
    import android.database.Cursor;
    import android.database.sqlite.SQLiteDatabase;
    import android.widget.Toast;

    import org.apache.http.params.CoreConnectionPNames;

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.net.MalformedURLException;
    import java.net.URI;
    import java.net.URL;
    import java.net.URLConnection;
    import java.net.URLEncoder;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import java.util.List;
    import java.util.Map;

    import javax.net.ssl.HttpsURLConnection;

    /***
    * 单点定位示例,用来展示基本的定位结果,配置在LocationService.java中
    * 默认配置也可以在LocationService中修改
    * 默认配置的内容自于开发者论坛中对开发者长期提出的疑问内容
    *
    * @author baidu
    */
    public class LocationActivity extends Activity {
    private LocationService locationService;
    private MyLocationService myLocationService;
    private TextView LocationResult;
    private Button startLocation;
    //private Button query;

    public static String workid = null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    // -----------demo view config ------------
    setContentView(R.layout.location);
    LocationResult = (TextView) findViewById(R.id.textView1);
    LocationResult.setMovementMethod(ScrollingMovementMethod.getInstance());
    startLocation = (Button) findViewById(R.id.addfence);
    //query=(Button) findViewById(R.id.query);

    }

    /**
    * 显示请求字符串
    *
    * @param str
    */
    public void logMsg(String str) {
    try {
    if (LocationResult != null)
    LocationResult.setText(str);
    Log.w("warn", str);
    //insert(longitude,latitude);
    } catch (Exception e) {
    e.printStackTrace();
    }
    }


    /***
    * Stop location service
    */
    @Override
    protected void onStop() {
    // TODO Auto-generated method stub
    super.onStop();
    }

    private boolean isServiceRunning() {
    ActivityManager manager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
    for (ActivityManager.RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
    if ("com.baidu.location.service.MyLocationService".equals(service.service.getClassName())) {
    return true;
    }
    }
    return false;
    }

    @Override
    protected void onStart() {
    // TODO Auto-generated method stub
    super.onStart();
    Log.i("workid", "" + this.isServiceRunning());
    if(this.isServiceRunning()){
    startLocation.setText(getString(R.string.stoplocation));
    }else{
    startLocation.setText(getString(R.string.startlocation));
    }
    startLocation.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View v) {
    if (startLocation.getText().toString().equals(getString(R.string.startlocation))) {
    LocationResult.setVisibility(View.VISIBLE);
    //locationService.start();// 定位SDK
    // start之后会默认发起一次定位请求,开发者无须判断isstart并主动调用request
    Date date = new Date();
    LocationActivity.workid = new SimpleDateFormat("MMddHHmm").format(date);
    Intent idintent = new Intent(LocationActivity.this, MyLocationService.class);
    idintent.putExtra("workid", LocationActivity.workid);
    startService(idintent);
    startLocation.setText(getString(R.string.stoplocation));
    } else {
    //locationService.stop();
    stopService(new Intent(LocationActivity.this, MyLocationService.class));
    getdialog();
    startLocation.setText(getString(R.string.startlocation));
    LocationResult.setVisibility(View.INVISIBLE);
    }
    }
    });
    }

    private void getdialog() {
    final EditText et = new EditText(this);
    final String workid = this.workid;
    new AlertDialog.Builder(this).setTitle("请输入面积").setView(et).
    setPositiveButton("确定", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface arg0, int arg1) {
    final String size = et.getText().toString();
    new Thread() {
    @Override
    public void run() {
    httpget(workid, size);
    }
    }.start();
    //Log.i("size",size);

    }
    }).show();
    }

    public String httpget(String workid, String size) {

    String result = "";
    BufferedReader in = null;
    StringBuilder buf = new StringBuilder("http://www.agribiotech.cn/record/record/sizerecord");
    buf.append("?");
    buf.append("workid=" + workid + "&");
    buf.append("size=" + size);


    try {
    URL url = null;
    url = new URL(buf.toString());
    URLConnection conn = url.openConnection();
    conn.setRequestProperty("Content-Type", "application/json; charset=UTF-8");
    conn.setRequestProperty("Accept", "application/json");
    conn.connect();
    Map<String, List<String>> map = conn.getHeaderFields();
    for (String key : map.keySet()) {
    System.out.println(key + "--->" + map.get(key));
    }
    in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
    String line;
    while ((line = in.readLine()) != null) {
    result += " " + line;
    }

    } catch (IOException e) {
    Log.i("warn", e.toString());
    e.printStackTrace();
    } finally {
    try {
    if (in != null) {
    in.close();
    }
    } catch (IOException ex) {
    ex.printStackTrace();
    }
    }
    return result;

    }
    }
  • 相关阅读:
    C++——string转char[]
    Ackerman的非递归算法(未解决)
    单链表——递归求最大整数、节点个数、平均值
    队列——以数组Q[m]存放循环队列元素,设置一个标志tag,以tag=0和tag=1来区别在头指针和尾指针相等时,队列为空或满
    队列——假设以带头结点的循环链表表示队列,并且只设一个指针指向队尾元素结点(注意:不设头指针), * 试编写相应的置空队列、判断队列是否为空、入队和出队等算法。
    栈——判断回文
    栈——表达式求值
    栈——匹配()[]
    栈——十进制转八进制
    动态获取导航栏
  • 原文地址:https://www.cnblogs.com/to-creat/p/5683822.html
Copyright © 2020-2023  润新知