1.Wel_Guide初始化界面
package com.example.a15665851628.smarttransport.Wel_Guide; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentActivity; import android.support.v4.view.PagerAdapter; import android.support.v4.view.ViewPager; import android.view.View; import android.widget.LinearLayout; import com.example.a15665851628.smarttransport.R; import java.util.ArrayList; import java.util.List; /** * Created by 15665851628 on 2018/7/12. */ public class GuideActivity extends FragmentActivity { private ViewPager viewPager; private LinearLayout llGuide; private PagerAdapter pagerAdapter; private List<Fragment> fragments=new ArrayList<Fragment>(); @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_guide); viewPager=findViewById(R.id.guide_viewPager); llGuide=findViewById(R.id.ll_guide); for (int i=0;i<4;i++){ GuideFragment fragment=new GuideFragment(); Bundle bundle=new Bundle(); bundle.putInt("index",i); fragment.setArguments(bundle); fragments.add(fragment); } pagerAdapter=new GuideAdapter(getSupportFragmentManager(),fragments); viewPager.setAdapter(pagerAdapter); viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { for (int i = 0; i < fragments.size(); i++) { llGuide.getChildAt(i).setBackgroundResource(position == i ? R.drawable.dot_focus : R.drawable.dot_nomal); } } @Override public void onPageSelected(int position) { } @Override public void onPageScrollStateChanged(int state) { } }); initllGuide(); } private void initllGuide() { LinearLayout.LayoutParams llParams=new LinearLayout.LayoutParams(32,32); llParams.leftMargin=20; llParams.rightMargin=20; for (int i=0;i<fragments.size();i++){ View view=new View(this); view.setId(i); view.setBackgroundResource(i==0?R.drawable.dot_focus:R.drawable.dot_nomal); view.setLayoutParams(llParams); llGuide.addView(view); } } }
package com.example.a15665851628.smarttransport.Wel_Guide; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import java.util.ArrayList; import java.util.List; /** * Created by 15665851628 on 2018/7/12. */ public class GuideAdapter extends FragmentPagerAdapter { private List<Fragment> fragments=new ArrayList<Fragment>(); public GuideAdapter(FragmentManager fm) { super(fm); } public GuideAdapter(FragmentManager fm, List<Fragment> fragments) { super(fm); this.fragments=fragments; } @Override public Fragment getItem(int position) { return fragments.get(position); } @Override public int getCount() { return fragments.size(); } }
package com.example.a15665851628.smarttransport.Wel_Guide; import android.content.Intent; import android.os.Bundle; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.Button; import android.widget.RelativeLayout; import com.example.a15665851628.smarttransport.R; import com.example.a15665851628.smarttransport.Sign_In_Up.SignActivity; /** * Created by 15665851628 on 2018/7/12. */ public class GuideFragment extends Fragment { private int[] bgRes={R.mipmap.guide1,R.mipmap.guide2,R.mipmap.guide3,R.mipmap.guide4}; private RelativeLayout relativeLayout; private Button bt_enter; @Nullable @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view=inflater.inflate(R.layout.fragment_guide,null); relativeLayout=view.findViewById(R.id.rl_guide); bt_enter=view.findViewById(R.id.bt_enter); int index=getArguments().getInt("index"); relativeLayout.setBackgroundResource(bgRes[index]); bt_enter.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { getActivity().onBackPressed(); startActivity(new Intent(getActivity(), SignActivity.class)); } }); bt_enter.setVisibility(index==3?View.VISIBLE:View.GONE); return view; } }
package com.example.a15665851628.smarttransport.Wel_Guide; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.support.v7.app.AppCompatActivity; import com.example.a15665851628.smarttransport.R; public class WelcomeActivity extends AppCompatActivity { private Context context=this; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_welcome); new Handler().postDelayed(new Runnable() { @Override public void run() { startActivity(new Intent(context,GuideActivity.class)); finish(); } },1000); } }
2.登录界面
package com.example.a15665851628.smarttransport.Sign_In_Up; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; /** * 将字节流转换为字符串的工具类 */ public class HttpUtils { public static String readMyInputStream(InputStream is) { byte[] result; try { ByteArrayOutputStream baos = new ByteArrayOutputStream(); byte[] buffer = new byte[1024]; int len; while ((len = is.read(buffer))!=-1) { baos.write(buffer,0,len); } is.close(); baos.close(); result = baos.toByteArray(); } catch (IOException e) { e.printStackTrace(); String errorStr = "获取数据失败。"; return errorStr; } return new String(result); } }
package com.example.a15665851628.smarttransport.Sign_In_Up; import android.Manifest; import android.content.Context; import android.content.pm.PackageManager; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.design.widget.TabLayout; import android.support.v4.app.ActivityCompat; import android.support.v4.app.Fragment; import android.support.v4.content.ContextCompat; import android.support.v4.view.ViewPager; import android.support.v7.app.AppCompatActivity; import com.example.a15665851628.smarttransport.R; import java.util.ArrayList; import java.util.List; /** * Created by 15665851628 on 2018/7/12. */ public class SignActivity extends AppCompatActivity { protected static ViewPager mViewapger; private TabLayout mTablayout; private List<Fragment> mFragments; protected static Context context; @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_sign); context=this; List<String> promissionList = new ArrayList<>(); if (ContextCompat.checkSelfPermission(SignActivity.this, Manifest.permission.CAMERA)!= PackageManager.PERMISSION_GRANTED){ promissionList.add(Manifest.permission.CAMERA); } if (ContextCompat.checkSelfPermission(SignActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE)!= PackageManager.PERMISSION_GRANTED){ promissionList.add(Manifest.permission.WRITE_EXTERNAL_STORAGE); } if(!promissionList.isEmpty()){ String[] permissions = promissionList.toArray(new String[promissionList.size()]); ActivityCompat.requestPermissions(SignActivity.this,permissions,1); } mViewapger = (ViewPager) findViewById(R.id.sign_viewPager); mTablayout = (TabLayout) findViewById(R.id.sign_tl); mFragments=new ArrayList<Fragment>(); SignInFragment signInFragment=new SignInFragment(); SignUpFragment signUpFragment=new SignUpFragment(); mFragments.add(signInFragment); mFragments.add(signUpFragment); SignAdapter adapter=new SignAdapter(getSupportFragmentManager(),mFragments); mViewapger.setAdapter(adapter); mTablayout.setupWithViewPager(mViewapger); } }
package com.example.a15665851628.smarttransport.Sign_In_Up; import android.support.annotation.Nullable; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import java.util.List; /** * Created by 15665851628 on 2018/7/13. */ public class SignAdapter extends FragmentPagerAdapter { private String title[]={"登录","注册"}; private List<Fragment> fragments; public SignAdapter(FragmentManager fm) { super(fm); } public SignAdapter(FragmentManager fm, List<Fragment> fragments) { super(fm); this.fragments=fragments; } @Override public Fragment getItem(int position) { return fragments.get(position); } @Override public int getCount() { return fragments.size(); } @Nullable @Override public CharSequence getPageTitle(int position) { return title[position]; } }
package com.example.a15665851628.smarttransport.Sign_In_Up; import android.app.AlertDialog; import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; import android.os.Build; import android.os.Bundle; import android.os.Handler; import android.os.Looper; import android.os.Message; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.support.annotation.RequiresApi; import android.support.v4.app.Fragment; import android.text.TextWatcher; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.EditText; import android.widget.Spinner; import android.widget.Toast; import com.example.a15665851628.smarttransport.Map.MapActivity; import com.example.a15665851628.smarttransport.R; import com.google.gson.Gson; import com.google.gson.JsonSyntaxException; import org.json.JSONObject; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.CookieHandler; import java.net.CookieManager; import java.net.CookiePolicy; import java.net.CookieStore; import java.net.HttpCookie; import java.net.HttpURLConnection; import java.net.URL; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.concurrent.TimeUnit; import okhttp3.Call; import okhttp3.Callback; import okhttp3.Cookie; import okhttp3.CookieJar; import okhttp3.FormBody; import okhttp3.HttpUrl; import okhttp3.MediaType; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.RequestBody; import okhttp3.Response; import static android.content.Context.MODE_PRIVATE; /** * Created by 15665851628 on 2018/7/13. */ //登陆 public class SignInFragment extends Fragment { public static OkHttpClient okHttpClient; public static String my_cookie; private static String sessionID; private Button bt_signIn; private String username; private String password; private String identity; private EditText ed_username; private EditText ed_password; private AlertDialog dialog; private Handler handler; @Nullable @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_sign_in, null); bt_signIn = view.findViewById(R.id.sign_in_bt); ed_password = view.findViewById(R.id.ed_sign_in_password); ed_username = view.findViewById(R.id.ed_sign_in_account); bt_signIn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { username = ed_username.getText().toString(); password=ed_password.getText().toString(); System.out.println(password+username); httpUrlConnction(); // startActivity(new Intent(SignActivity.context, MapActivity.class)); } }); handler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); switch (msg.what) { case 400: if(msg.obj.equals("登陆成功")){ Intent intent =new Intent(SignActivity.context,MapActivity.class); startActivity(intent); }else if(msg.obj.toString().equals("密码错误")){ ed_password.setText(""); Toast.makeText(SignActivity.context,"密码错误",Toast.LENGTH_SHORT).show(); }else if (msg.obj.toString().equals("用户名不存在")){ ed_username.setText(""); Toast.makeText(SignActivity.context,"用户名不存在",Toast.LENGTH_SHORT).show(); } break; default: break; } } }; return view; } //登陆使用的 public void httpUrlConnction() { new Thread() { public void run() { try { OkHttpClient.Builder client1=new OkHttpClient.Builder(); client1.cookieJar(new CookieJar() { private List<Cookie> cookies; @Override public void saveFromResponse(HttpUrl url, List<Cookie> cookies) { this.cookies=cookies; String cookie_hh=cookies+""; System.out.print(cookie_hh); my_cookie= cookie_hh.substring(cookie_hh.indexOf("=")+1,cookie_hh.indexOf(";")); System.out.print("lllllllllllllll"+my_cookie); } @Override public List<Cookie> loadForRequest(HttpUrl url) { if(cookies!=null){ System.out.println(cookies+"youyouyoyouyo"); return cookies; }else{ return new ArrayList<Cookie>(); } } }); okHttpClient=client1.build(); Map map = new HashMap(); // 成对放入多个key-value对 map.put("username" , username); map.put("password" , password); //使用Gson 添加 依赖 Gson gson = new Gson(); //使用Gson将对象转换为json字符串 String json = gson.toJson(map); //MediaType 设置Content-Type 标头中包含的媒体类型值 RequestBody requestBody = FormBody.create(MediaType.parse("application/json; charset=utf-8") , json); Request request = new Request.Builder() .url("http://139.199.27.66:8081/login")//请求的url .post(requestBody) .build(); //创建/Call Call call = okHttpClient.newCall(request); //加入队列 异步操作 call.enqueue(new Callback() { //请求错误回调方法 @Override public void onFailure(Call call, IOException e) { System.out.println("连接失败"); } @Override public void onResponse(Call call, Response response) throws IOException { String responseData=response.body().string(); System.out.print(responseData); System.out.println("hhhhhxxr"); String back_data=null; if(responseData.contains("登录成功")){ back_data="登陆成功"; }else if(responseData.contains("密码错误")){ back_data="密码错误"; }else if(responseData.contains("用户名不存在")) { back_data = "用户名不存在"; } Message message = Message.obtain(); message.what = 400; message.obj = back_data; handler.sendMessage(message); }}); } catch (Exception e) { e.printStackTrace(); } } }.start(); } @Override public void onPause() { super.onPause(); } }
package com.example.a15665851628.smarttransport.Sign_In_Up; import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.os.Looper; import android.os.Message; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentTransaction; import android.text.Editable; import android.text.TextWatcher; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.EditText; import android.widget.Spinner; import android.widget.Toast; import com.example.a15665851628.smarttransport.R; import org.json.JSONObject; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.URL; /** * Created by 15665851628 on 2018/7/13. */ //注册 public class SignUpFragment extends Fragment { public static String username; private String password; private String email; private String identity; private EditText ed_username; private EditText ed_password; private EditText ed_email; private Button bt_signUp; public static Handler handler; public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_sign_up,container,false); ed_email = view.findViewById(R.id.ed_sign_up_email); ed_username = view.findViewById(R.id.ed_sign_up_account); ed_password = view.findViewById(R.id.ed_sign_up_password); bt_signUp = view.findViewById(R.id.sign_up_bt); bt_signUp.setOnClickListener(new View.OnClickListener() { public void onClick(View view) { if (view.getId() == R.id.sign_up_bt){ username= ed_username.getText().toString(); password=ed_password.getText().toString(); email=ed_email.getText().toString(); httpUrlConnction(); } } }); TextChange textChange=new TextChange(); ed_username.addTextChangedListener(textChange); handler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); switch (msg.what) { case 100: //////////// ////////// ///////////// ////////////这里应该是用户名存在的时候进行的判断。 if(msg.obj.toString().equals("用户已存在")){ Toast.makeText(SignActivity.context,"用户名已存在",Toast.LENGTH_SHORT).show(); } break; case 300: ed_username.setText(""); ed_password.setText(""); ed_email.setText(""); if(msg.obj.toString().equals("注册成功")){ Toast.makeText(SignActivity.context,"注册成功",Toast.LENGTH_SHORT).show(); SignInFragment signInFragment=new SignInFragment(); SignUpFragment signUpFragment=new SignUpFragment(); //fragment调转 Intent intent = new Intent(getActivity(),SignActivity.class); startActivity(intent); /* showFragment(signUpFragment,signInFragment);*/ }else{ Toast.makeText(SignActivity.context,"注册失败",Toast.LENGTH_SHORT).show(); } break; default: break; } } }; return view; } /* private void showFragment(Fragment fragment1, Fragment fragment2) { // 获取 FragmentTransaction 对象 FragmentTransaction transaction = getFragmentManager() .beginTransaction(); //如果fragment2没有被添加过,就添加它替换当前的fragment1 if (!fragment2.isAdded()) { transaction.replace(R.id.sign_in_dl,fragment2) //加入返回栈,这样你点击返回键的时候就会回退到fragment1了 .addToBackStack(null) // 提交事务 .commitAllowingStateLoss(); } else { //如果已经添加过了的话就隐藏fragment1,显示fragment2 transaction // 隐藏fragment1,即当前碎片 .hide(fragment1) // 显示已经添加过的碎片,即fragment2 .show(fragment2) // 加入返回栈 .addToBackStack(null) // 提交事务 .commitAllowingStateLoss(); } }*/ //注册使用的 public void httpUrlConnction() { new Thread() { public void run() { try { JSONObject obj = new JSONObject(); obj.put("username", username); obj.put("password", password); // obj.put("password", "llll"); System.out.println(obj); // 创建url资源 URL url = new URL("http://139.199.27.66:8081/"); // 建立http连接 HttpURLConnection conn = (HttpURLConnection) url.openConnection(); // 设置允许输出 conn.setDoOutput(true); conn.setDoInput(true); // 设置不用缓存 conn.setUseCaches(false); // 设置传递方式 conn.setRequestMethod("POST"); // 设置维持长连接 conn.setRequestProperty("Connection", "Keep-Alive"); // 设置文件字符集: conn.setRequestProperty("Charset", "UTF-8"); //转换为字节数组 byte[] data = (obj.toString()).getBytes(); // 设置文件长度 conn.setRequestProperty("Content-Length", String.valueOf(data.length)); // 设置文件类型: conn.setRequestProperty("contentType", "application/json"); // 开始连接请求 conn.connect(); OutputStream out = conn.getOutputStream(); // 写入请求的字符串 out.write((obj.toString()).getBytes()); out.flush(); out.close(); System.out.println(conn.getResponseCode()); // 请求返回的状态 if (conn.getResponseCode() == 200) { System.out.println("连接成功"); try { // 请求返回的数据 InputStream in = conn.getInputStream(); String result = HttpUtils.readMyInputStream(in); System.out.println(result); boolean flag=result.contains("注册成功"); String back_data; if(flag){ back_data="注册成功"; }else{ back_data="注册失败"; } Message message = Message.obtain(); message.what =300 ; message.obj=back_data; SignUpFragment.handler.sendMessage(message); } catch (Exception e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } else { System.out.println("no++"); } } catch (Exception e) { } } }.start(); } } class TextChange implements TextWatcher { @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { } @Override public void afterTextChanged(Editable s) { //Toast.makeText(SignActivity.context,"hhhhhhhhh",Toast.LENGTH_SHORT).show(); httpUrlConnction_rename(); } //这个是用来 判断用户名是否存在的!! public void httpUrlConnction_rename() { new Thread() { public void run() { try { JSONObject obj = new JSONObject(); obj.put("username",SignUpFragment.username ); // obj.put("password", "llll"); System.out.println(obj); // 创建url资源 URL url = new URL("http://139.199.27.66:8081/isExist"); // 建立http连接 HttpURLConnection conn = (HttpURLConnection) url.openConnection(); // 设置允许输出 conn.setDoOutput(true); conn.setDoInput(true); // 设置不用缓存 conn.setUseCaches(false); // 设置传递方式 conn.setRequestMethod("POST"); // 设置维持长连接 conn.setRequestProperty("Connection", "Keep-Alive"); // 设置文件字符集: conn.setRequestProperty("Charset", "UTF-8"); //转换为字节数组 byte[] data = (obj.toString()).getBytes(); // 设置文件长度 conn.setRequestProperty("Content-Length", String.valueOf(data.length)); // 设置文件类型: conn.setRequestProperty("contentType", "application/json"); // 开始连接请求 conn.connect(); OutputStream out = conn.getOutputStream(); // 写入请求的字符串 out.write((obj.toString()).getBytes()); out.flush(); out.close(); System.out.println(conn.getResponseCode()); // 请求返回的状态 if (conn.getResponseCode() == 200) { System.out.println("连接成功"); try { // 请求返回的数据 InputStream in = conn.getInputStream(); String result = HttpUtils.readMyInputStream(in); System.out.println(result); boolean flag=result.contains("用户名不存在"); String back_data; if(flag){ back_data="用户不存在"; }else{ back_data="用户存在"; } Message message = Message.obtain(); message.what =100 ; message.obj=back_data; SignUpFragment.handler.sendMessage(message); } catch (Exception e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } else { System.out.println("no++"); } } catch (Exception e) { } } }.start(); } }
2.Map地图:
package com.example.a15665851628.smarttransport.Map; import android.annotation.SuppressLint; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.view.View; public class Bus_101 extends View { public Bus_101(Context context) { super(context); } @SuppressLint("ResourceAsColor") @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); Paint paint=new Paint(); paint.setStrokeWidth(30); paint.setColor(Color.BLUE); canvas.drawLine(480,20,0,500,paint); canvas.drawLine(0,490,412,902,paint); canvas.drawLine(415,885,170,1130,paint); canvas.drawLine(175,1122,175,1400,paint); paint.setColor(Color.WHITE); int r=23; canvas.drawCircle(300,193,r,paint); canvas.drawCircle(120,380,r,paint); canvas.drawCircle(130,620,r,paint); canvas.drawCircle(310,800,r,paint); canvas.drawCircle(300,1000,r,paint); canvas.drawCircle(175,1220,r,paint); } }
package com.example.a15665851628.smarttransport.Map; import android.annotation.SuppressLint; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.view.View; public class Bus_102 extends View { public Bus_102(Context context) { super(context); } @SuppressLint("ResourceAsColor") @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); Paint paint=new Paint(); paint.setStrokeWidth(30); paint.setColor(Color.BLUE); canvas.drawLine(480,20,380,120,paint); canvas.drawLine(365,115,610,360,paint); canvas.drawLine(610,340,-10,960,paint); canvas.drawLine(-40,960,160,1160,paint); canvas.drawLine(150,1150,1000,300,paint); paint.setColor(Color.WHITE); int r=23; canvas.drawCircle(490,236,r,paint); canvas.drawCircle(520,425,r,paint); canvas.drawCircle(330,615,r,paint); canvas.drawCircle(150,795,r,paint); canvas.drawCircle(65,1075,r,paint); canvas.drawCircle(300,1000,r,paint); canvas.drawCircle(500,800,r,paint); canvas.drawCircle(700,600,r,paint); canvas.drawCircle(850,450,r,paint); canvas.drawCircle(1000,300,r,paint); } }
package com.example.a15665851628.smarttransport.Map; import android.annotation.SuppressLint; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.view.View; public class Bus_103 extends View { public Bus_103(Context context) { super(context); } @SuppressLint("ResourceAsColor") @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); Paint paint=new Paint(); paint.setStrokeWidth(30); paint.setColor(Color.BLUE); canvas.drawLine(570,20,1100,550,paint); canvas.drawLine(1170,510,800,880,paint); canvas.drawLine(810,890,200,280,paint); canvas.drawLine(200,300,0,500,paint); canvas.drawLine(0,490,850,1340,paint); paint.setColor(Color.WHITE); int r=23; canvas.drawCircle(580,30,r,paint); canvas.drawCircle(800,250,r,paint); canvas.drawCircle(1000,450,r,paint); canvas.drawCircle(965,710,r,paint); canvas.drawCircle(715,790,r,paint); canvas.drawCircle(515,590,r,paint); canvas.drawCircle(315,390,r,paint); canvas.drawCircle(120,380,r,paint); canvas.drawCircle(110,600,r,paint); canvas.drawCircle(310,800,r,paint); canvas.drawCircle(540,1030,r,paint); } }
package com.example.a15665851628.smarttransport.Map; import android.annotation.SuppressLint; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.view.View; public class Bus_104 extends View { public Bus_104(Context context) { super(context); } @SuppressLint("ResourceAsColor") @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); Paint paint=new Paint(); paint.setStrokeWidth(30); paint.setColor(Color.BLUE); canvas.drawLine(480,20,380,120,paint); canvas.drawLine(365,115,780,530,paint); canvas.drawLine(250,1050,785,515,paint); canvas.drawLine(270,1050,425,1200,paint); canvas.drawLine(416,1200,713,1200,paint); canvas.drawLine(700,1195,900,1395,paint); paint.setColor(Color.WHITE); int r=23; canvas.drawCircle(490,236,r,paint); canvas.drawCircle(650,396,r,paint); canvas.drawCircle(350,956,r,paint); canvas.drawCircle(520,780,r,paint); canvas.drawCircle(700,600,r,paint); canvas.drawCircle(338,1120,r,paint); canvas.drawCircle(560,1200,r,paint); } }
package com.example.a15665851628.smarttransport.Map; import android.annotation.SuppressLint; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.Path; import android.view.View; import com.example.a15665851628.smarttransport.R; public class Map extends View { public Map(Context context) { super(context); } @SuppressLint("ResourceAsColor") @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); Paint paint=new Paint(); paint.setStrokeWidth(45); paint.setColor(Color.WHITE); //斜向上 canvas.drawLine(-50,1000,590,360,paint); canvas.drawLine(800,880,1100,580,paint); canvas.drawLine(700,1200,900,1000,paint); canvas.drawLine(-50,550,550,-50,paint); //斜向下 canvas.drawLine(-50,730,100,880,paint); canvas.drawLine(285,1065,1180,1960,paint); canvas.drawLine(-50,950,125,1125,paint); canvas.drawLine(500,-50,1200,650,paint); canvas.drawLine(200,-50,795,545,paint); canvas.drawLine(750,-50,1050,250,paint); //竖线 canvas.drawLine(170,1105,170,3000,paint); canvas.drawLine(420,1200,420,3000,paint); canvas.drawLine(720,1500,720,3000,paint); canvas.drawLine(750,0,750,200,paint); //横线 canvas.drawLine(420,1200,750,1200,paint); canvas.drawLine(0,1450,990,1450,paint); canvas.drawLine(0,1730,940,1730,paint); // paint.setColor(0xFFCCCCCC); paint.setColor(Color.WHITE); paint.setStrokeWidth(60); canvas.drawLine(-50,30,1150,1230,paint); canvas.drawLine(-80,410,1120,1610,paint); canvas.drawLine(-50,1350,1150,150,paint); paint.setColor(Color.YELLOW); paint.setStrokeWidth(8); //斜向上 canvas.drawLine(-50,970,50,870,paint); canvas.drawLine(80,840,190,730,paint); canvas.drawLine(230,690,400,520,paint); canvas.drawLine(435,480,570,350,paint); canvas.drawLine(800,850,1100,550,paint); canvas.drawLine(710,1160,870,1000,paint); canvas.drawLine(-50,520,170,300,paint); canvas.drawLine(210,260,350,120,paint); canvas.drawLine(380,90,550,-80,paint); canvas.drawLine(-50,1030,220,760,paint); canvas.drawLine(260,720,430,550,paint); canvas.drawLine(465,515,600,380,paint); canvas.drawLine(830,880,1100,610,paint); canvas.drawLine(740,1190,900,1030,paint); canvas.drawLine(40,490,200,330,paint); canvas.drawLine(240,300,380,150,paint); canvas.drawLine(410,120,550,-20,paint); //斜向下 canvas.drawLine(-40,780,50,870,paint); canvas.drawLine(300,1050,425,1175,paint); canvas.drawLine(460,1215,675,1430,paint); canvas.drawLine(710,1455,1180,1930,paint); canvas.drawLine(-60,910,140,1110,paint); canvas.drawLine(500,-80,735,155,paint); canvas.drawLine(780,200,920,340,paint); canvas.drawLine(960,380,1200,620,paint); canvas.drawLine(190,-90,380,100,paint); canvas.drawLine(405,125,765,485,paint); canvas.drawLine(750,-80,1050,220,paint); ////////////// canvas.drawLine(0,750,80,830,paint); canvas.drawLine(260,1075,400,1215,paint); canvas.drawLine(440,1255,615,1425,paint); canvas.drawLine(655,1465,700,1510,paint); canvas.drawLine(740,1550,910,1720,paint); canvas.drawLine(940,1760,1180,1990,paint); canvas.drawLine(-90,940,110,1140,paint); canvas.drawLine(500,-20,890,370,paint); canvas.drawLine(930,410,1200,680,paint); canvas.drawLine(160,-60,350,130,paint); canvas.drawLine(375,155,575,355,paint); canvas.drawLine(595,375,735,515,paint); canvas.drawLine(750,-20,1020,250,paint); //竖线 canvas.drawLine(150,1195,150,1420,paint); canvas.drawLine(150,1455,150,1710,paint); canvas.drawLine(150,1750,150,3000,paint); canvas.drawLine(400,1210,400,1420,paint); canvas.drawLine(400,1450,400,1710,paint); canvas.drawLine(400,1750,400,3000,paint); canvas.drawLine(700,1500,700,1710,paint); canvas.drawLine(700,1750,700,3000,paint); canvas.drawLine(735,0,735,150,paint); canvas.drawLine(195,1155,195,1420,paint); canvas.drawLine(195,1455,195,1710,paint); canvas.drawLine(195,1750,195,3000,paint); canvas.drawLine(445,1250,445,1420,paint); canvas.drawLine(445,1455,445,1710,paint); canvas.drawLine(445,1750,445,3000,paint); canvas.drawLine(745,1560,745,1710,paint); canvas.drawLine(745,1750,745,3000,paint); canvas.drawLine(775,0,775,200,paint); //横线 canvas.drawLine(420,1180,650,1180,paint); canvas.drawLine(0,1425,150,1425,paint); canvas.drawLine(190,1425,400,1425,paint); canvas.drawLine(440,1425,615,1425,paint); canvas.drawLine(676,1425,895,1425,paint); canvas.drawLine(0,1710,150,1710,paint); canvas.drawLine(190,1710,400,1710,paint); canvas.drawLine(440,1710,700,1710,paint); canvas.drawLine(740,1710,910,1710,paint); canvas.drawLine(452,1220,675,1220,paint); canvas.drawLine(0,1470,150,1470,paint); canvas.drawLine(190,1470,400,1470,paint); canvas.drawLine(440,1470,660,1470,paint); canvas.drawLine(710,1470,915,1470,paint); canvas.drawLine(0,1760,150,1760,paint); canvas.drawLine(190,1760,400,1760,paint); canvas.drawLine(440,1760,700,1760,paint); canvas.drawLine(740,1760,920,1760,paint); paint.setColor(Color.GREEN); paint.setStrokeWidth(10); canvas.drawLine(-50,1310,120,1140,paint); canvas.drawLine(145,1115,365,895,paint); canvas.drawLine(405,855,570,690,paint); canvas.drawLine(610,650,745,515,paint); canvas.drawLine(770,490,890,370,paint); canvas.drawLine(925,345,1020,250,paint); canvas.drawLine(1050,220,1150,110,paint); canvas.drawLine(0,450,10,460,paint); canvas.drawLine(40,490,235,685,paint); canvas.drawLine(265,715,405,855,paint); canvas.drawLine(445,895,710,1160,paint); canvas.drawLine(740,1190,1120,1570,paint); canvas.drawLine(-50,-10,215,255,paint); canvas.drawLine(250,290,435,475,paint); canvas.drawLine(470,510,610,650,paint); canvas.drawLine(648,688,800,840,paint); canvas.drawLine(830,870,1150,1190,paint); canvas.drawLine(-50,1390,150,1190,paint); canvas.drawLine(190,1160,270,1080,paint); canvas.drawLine(290,1060,405,935,paint); canvas.drawLine(445,895,610,730,paint); canvas.drawLine(650,690,930,410,paint); canvas.drawLine(960,380,1150,190,paint); canvas.drawLine(-80,460,190,730,paint); canvas.drawLine(220,760,365,895,paint); canvas.drawLine(405,935,640,1170,paint); canvas.drawLine(670,1210,890,1420,paint); canvas.drawLine(920,1455,1120,1660,paint); canvas.drawLine(-50,70,175,295,paint); canvas.drawLine(205,325,400,520,paint); canvas.drawLine(430,550,570,700,paint); canvas.drawLine(610,740,870,1000,paint); canvas.drawLine(900,1030,1150,1270,paint); paint.setColor(Color.BLACK); paint.setTextSize(35); Path path=new Path(); path.setLastPoint(0,500); path.lineTo(500,0); String path1Name="A 一 路"; canvas.drawTextOnPath(path1Name,path,400,13,paint); Path path2=new Path(); path2.setLastPoint(-200,700); path2.lineTo(500,0); canvas.drawTextOnPath("A 二 路",path2,375,330,paint); canvas.drawTextOnPath("A 三 路",path2,750,846,paint); canvas.drawTextOnPath("A 五 路",path2,377,1000,paint); Path path3=new Path(); path3.setLastPoint(-300,800); path3.lineTo(500,0); String path3Name="A 四 路"; canvas.drawTextOnPath(path3Name,path3,100,580,paint); canvas.drawTextOnPath(path3Name,path3,900,580,paint); Path path4=new Path(); path4.setLastPoint(500,0); path4.lineTo(1500,1000); String path4Name="B 一 路"; canvas.drawTextOnPath("B 一 路",path4,250,-20,paint); canvas.drawTextOnPath("B 二 路",path4,310,-195,paint); canvas.drawTextOnPath("B 三 路",path4,200,195,paint); canvas.drawTextOnPath("B 四 路",path4,50,430,paint); canvas.drawTextOnPath("B 四 路",path4,800,430,paint); canvas.drawTextOnPath("B 五 路",path4,160,715,paint); canvas.drawTextOnPath("B 五 路",path4,900,715,paint); Path path5=new Path(); path5.setLastPoint(0,800); path5.lineTo(800,1600); canvas.drawTextOnPath("C 一 路",path5,650,0,paint); Path path6=new Path(); path6.setLastPoint(0,1450); path6.lineTo(1000,1450); canvas.drawTextOnPath("D 一 路",path6,300,10,paint); canvas.drawTextOnPath("D 二 路",path6,300,300,paint); Path path7=new Path(); path7.setLastPoint(450,1500); path7.lineTo(450,1700); canvas.drawTextOnPath("E 一 路",path7,0,40,paint); canvas.drawTextOnPath("E 二 路",path7,0,290,paint); canvas.drawTextOnPath("E 三 路",path7,40,-260,paint); } }
package com.example.a15665851628.smarttransport.Map; import android.annotation.SuppressLint; import android.content.Context; import android.content.Intent; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.os.Build; import android.os.Handler; import android.os.Looper; import android.os.Message; import android.support.annotation.NonNull; import android.support.annotation.RequiresApi; import android.support.design.widget.FloatingActionButton; import android.support.design.widget.NavigationView; import android.support.v4.content.ContextCompat; import android.support.v4.widget.DrawerLayout; import android.support.v7.app.ActionBarDrawerToggle; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.support.v7.widget.Toolbar; import android.util.Log; import android.view.Gravity; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import android.widget.Toast; import com.example.a15665851628.smarttransport.R; import com.example.a15665851628.smarttransport.Sign_In_Up.HttpUtils; import com.example.a15665851628.smarttransport.Sign_In_Up.SignActivity; import com.example.a15665851628.smarttransport.Sign_In_Up.SignInFragment; import com.google.gson.Gson; import org.json.JSONObject; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.URL; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Timer; import java.util.TimerTask; import okhttp3.Call; import okhttp3.Callback; import okhttp3.Cookie; import okhttp3.CookieJar; import okhttp3.FormBody; import okhttp3.HttpUrl; import okhttp3.MediaType; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.RequestBody; import okhttp3.Response; public class MapActivity extends AppCompatActivity { private Timer timer; int time_park; private Toolbar toolbar; private ImageView img_bus; private ImageView img_busStation; private ImageView img_start; private ImageView img_end; private Bus_101 bus101; private Bus_102 bus102; private Bus_103 bus103; private Bus_104 bus104; static String bus_xs,bus_ys; static int bus_x,bus_y; private Handler handler; private FrameLayout layout; private Button bt_bus; private Button bt_light; private Button bt_stop; private Button bt_change; private Context context; private Map mapView; private int busX; private int busY; static String []lights=new String[20]; String speed_data,park_data,sumMoney_data,light_time,flag_bus1,flag_bus2,flag_bus3,flag_bus4; int i=0; static String flag,flag1,flag2,flag3; @SuppressLint("ResourceAsColor") @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_map); initView(); initToolBar(); initButton(); context=this; for(int i=0;i<12;i++){ lights[i]="green"; } handler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); switch (msg.what) { //小车移动第一两车 case 101: if(msg.obj.equals("true")){ httpUrlConnction_car("busOne"); // FrameLayout.LayoutParams layoutParams3=new FrameLayout.LayoutParams(80,80); img_bus.setX(bus_x); img_bus.setY(bus_y); // layout.addView(img_bus,layoutParams3); } break; case 102: if(msg.obj.equals("true")){ httpUrlConnction_car("busTwo"); // FrameLayout.LayoutParams layoutParams3=new FrameLayout.LayoutParams(80,80); img_bus.setX(bus_x); img_bus.setY(bus_y); // layout.addView(img_bus,layoutParams3); } break; case 103: if(msg.obj.equals("true")){ httpUrlConnction_car("busThree"); // FrameLayout.LayoutParams layoutParams3=new FrameLayout.LayoutParams(80,80); img_bus.setX(bus_x); img_bus.setY(bus_y); // layout.addView(img_bus,layoutParams3); } break; case 104: if(msg.obj.equals("true")){ httpUrlConnction_car("busFour"); // FrameLayout.LayoutParams layoutParams3=new FrameLayout.LayoutParams(80,80); img_bus.setX(bus_x); img_bus.setY(bus_y); // layout.addView(img_bus,layoutParams3); } break; case 04: if(msg.obj.equals("true")) { httpUrlConnction_LightGR("4-1", 0); httpUrlConnction_LightGR("4-2", 1); httpUrlConnction_LightGR("4-3", 2); httpUrlConnction_LightGR("4-4", 3); httpUrlConnction_LightGR("4-5", 4); httpUrlConnction_LightGR("4-6", 5); httpUrlConnction_LightGR("4-7", 6); httpUrlConnction_LightGR("4-8", 7); FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(130, 60); Button light1 = new Button(context); light1.setX(420); light1.setY(95); if (lights[0].equals("green")) { light1.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light1.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light2 = new Button(context); light2.setX(460); light2.setY(350); if (lights[1].equals("green")) { light2.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light2.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light3 = new Button(context); light3.setX(800); light3.setY(500); if (lights[2].equals("green")) { light3.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light3.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light4 = new Button(context); light4.setX(480); light4.setY(620); if (lights[3].equals("green")) { light4.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light4.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light5 = new Button(context); light5.setX(270); light5.setY(830); if (lights[4].equals("green")) { light5.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light5.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light6 = new Button(context); light6.setX(310); light6.setY(1010); if (lights[5].equals("green")) { light6.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light6.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light7 = new Button(context); light7.setX(360); light7.setY(1220); if (lights[6].equals("green")) { light7.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light7.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light8 = new Button(context); light8.setX(650); light8.setY(1120); if (lights[7].equals("green")) { light8.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light8.setBackground(getResources().getDrawable(R.drawable.light_red)); } layout.addView(light1, params); layout.addView(light2, params); layout.addView(light3, params); layout.addView(light4, params); layout.addView(light5, params); layout.addView(light6, params); layout.addView(light7, params); layout.addView(light8, params); } break; case 03: if(msg.obj.equals("true")){ httpUrlConnction_LightGR("3-1",0); httpUrlConnction_LightGR("3-2",1); httpUrlConnction_LightGR("3-3",2); httpUrlConnction_LightGR("3-4",3); httpUrlConnction_LightGR("3-5",4); httpUrlConnction_LightGR("3-6",5); httpUrlConnction_LightGR("3-7",6); httpUrlConnction_LightGR("3-8",7); httpUrlConnction_LightGR("3-9",8); httpUrlConnction_LightGR("3-10",9); FrameLayout.LayoutParams paramsx=new FrameLayout.LayoutParams(130,60); Button light1x=new Button(context); light1x.setX(630); light1x.setY(220); if(lights [0].equals("green")){ light1x.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light1x.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light2x=new Button(context); light2x.setX(790); light2x.setY(380); if(lights [1].equals("green")){ light2x.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light2x.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light3x=new Button(context); light3x.setX(940); light3x.setY(540); if(lights [2].equals("green")){ light3x.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light3x.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light4x=new Button(context); light4x.setX(730); light4x.setY(900); if(lights [3].equals("green")){ light4x.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light4x.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light5x=new Button(context); light5x.setX(630); light5x.setY(620); if(lights [4].equals("green")){ light5x.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light5x.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light6x=new Button(context); light6x.setX(450); light6x.setY(450); if(lights [5].equals("green")){ light6x.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light6x.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light7x=new Button(context); light7x.setX(150); light7x.setY(210); if(lights [6].equals("green")){ light7x.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light7x.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light8x=new Button(context); light8x.setX(50); light8x.setY(460); if(lights [7].equals("green")){ light8x.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light8x.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light9x=new Button(context); light9x.setX(250); light9x.setY(660); if(lights [8].equals("green")){ light9x.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light9x.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light10=new Button(context); light10.setX(410); light10.setY(820); if(lights [9].equals("green")){ light10.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light10.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light11=new Button(context); light11.setX(710); light11.setY(1120); light11.setBackground(getResources().getDrawable(R.drawable.light_green)); layout.addView(light1x,paramsx); layout.addView(light2x,paramsx); layout.addView(light3x,paramsx); layout.addView(light4x,paramsx); layout.addView(light5x,paramsx); layout.addView(light6x,paramsx); layout.addView(light7x,paramsx); layout.addView(light8x,paramsx); layout.addView(light9x,paramsx); layout.addView(light10,paramsx); layout.addView(light11,paramsx);} break; case 02: if(msg.obj.equals("true")){ httpUrlConnction_LightGR("2-1",0); httpUrlConnction_LightGR("2-2",1); httpUrlConnction_LightGR("2-3",2); httpUrlConnction_LightGR("2-4",3); httpUrlConnction_LightGR("2-5",4); httpUrlConnction_LightGR("2-6",5); httpUrlConnction_LightGR("2-7",6); httpUrlConnction_LightGR("2-8",7); httpUrlConnction_LightGR("2-9",8); FrameLayout.LayoutParams paramsh=new FrameLayout.LayoutParams(130,60); Button light1h=new Button(context); light1h.setX(420); light1h.setY(95); if(lights [0].equals("green")){ light1h.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light1h.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light2h=new Button(context); light2h.setX(620); light2h.setY(320); if(lights [1].equals("green")){ light2h.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light2h.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light3h=new Button(context); light3h.setX(440); light3h.setY(520); if(lights [2].equals("green")){ light3h.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light3h.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light4h=new Button(context); light4h.setX(240); light4h.setY(720); if(lights [3].equals("green")){ light4h.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light4h.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light5h=new Button(context); light5h.setX(20); light5h.setY(950); if(lights [4].equals("green")){ light5h.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light5h.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light6h=new Button(context); light6h.setX(80); light6h.setY(1170); if(lights [5].equals("green")){ light6h.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light6h.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light7h=new Button(context); light7h.setX(260); light7h.setY(1050); if(lights [6].equals("green")){ light7h.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light7h.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light8h=new Button(context); light8h.setX(400); light8h.setY(910); if(lights [7].equals("green")){ light8h.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light8h.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light9h=new Button(context); light9h.setX(600); light9h.setY(710); if(lights [8].equals("green")){ light9h.setBackground(getResources().getDrawable(R.drawable.light_green)); }else{ light9h.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light10h=new Button(context); light10h.setX(770); light10h.setY(540); light10h.setBackground(getResources().getDrawable(R.drawable.light_green)); Button light11h=new Button(context); light11h.setX(920); light11h.setY(390); light11h.setBackground(getResources().getDrawable(R.drawable.light_green)); layout.addView(light1h,paramsh); layout.addView(light2h,paramsh); layout.addView(light3h,paramsh); layout.addView(light4h,paramsh); layout.addView(light5h,paramsh); layout.addView(light6h,paramsh); layout.addView(light7h,paramsh); layout.addView(light8h,paramsh); layout.addView(light9h,paramsh); layout.addView(light10h,paramsh); layout.addView(light11h,paramsh);} break; case 01: if(msg.obj.equals("true")) { httpUrlConnction_LightGR("1-1", 0); httpUrlConnction_LightGR("1-2", 1); httpUrlConnction_LightGR("1-3", 2); httpUrlConnction_LightGR("1-4", 3); httpUrlConnction_LightGR("1-5", 4); httpUrlConnction_LightGR("1-6", 5); httpUrlConnction_LightGR("1-7", 6); FrameLayout.LayoutParams params1 = new FrameLayout.LayoutParams(130, 60); Button light111 = new Button(context); light111.setX(400); light111.setY(110); if (lights[0].equals("green")) { light111.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light111.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light112 = new Button(context); light112.setX(200); light112.setY(310); if (lights[1].equals("green")) { light112.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light112.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light113 = new Button(context); light113.setX(50); light113.setY(450); if (lights[2].equals("green")) { light113.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light113.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light114 = new Button(context); light114.setX(240); light114.setY(650); if (lights[3].equals("green")) { light114.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light114.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light115 = new Button(context); light115.setX(430); light115.setY(850); if (lights[4].equals("green")) { light115.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light115.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light116 = new Button(context); light116.setX(280); light116.setY(1040); if (lights[5].equals("green")) { light116.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light116.setBackground(getResources().getDrawable(R.drawable.light_red)); } Button light117 = new Button(context); light117.setX(15); light117.setY(1100); if (lights[6].equals("green")) { light117.setBackground(getResources().getDrawable(R.drawable.light_green)); } else { light117.setBackground(getResources().getDrawable(R.drawable.light_red)); } layout.addView(light111, params1); layout.addView(light112, params1); layout.addView(light113, params1); layout.addView(light114, params1); layout.addView(light115, params1); layout.addView(light116, params1); layout.addView(light117, params1); } break; default: break; } } }; } private void stop(){ AlertDialog.Builder builder=new AlertDialog.Builder(MapActivity.this); View view1= LayoutInflater.from(MapActivity.this).inflate(R.layout.dialog_stop,null); builder.setView(view1); final AlertDialog dialog=builder.create(); dialog.show(); Button bt_cancel=view1.findViewById(R.id.bt_cancel); Button bt_search_money=view1.findViewById(R.id.bt_search_money); EditText ed_hour=view1.findViewById(R.id.ed_hour); EditText ed_min=view1.findViewById(R.id.ed_min); TextView ed_summoney=view1.findViewById(R.id.tx_stop_money); bt_cancel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { dialog.cancel(); } }); bt_search_money.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { String timeS=ed_hour.getText().toString(); if(timeS.equals("")){ time_park=0; }else{ time_park=Integer.parseInt(timeS); } httpUrlConnction_parkFee(); ed_summoney.setText(sumMoney_data); } }); } private void bus(){ AlertDialog.Builder builder=new AlertDialog.Builder(MapActivity.this); View view= LayoutInflater.from(MapActivity.this).inflate(R.layout.dialog_bus,null); builder.setView(view); final AlertDialog dialog=builder.create(); dialog.show(); Button bus_101=view.findViewById(R.id.bt_bus101); Button bus_102=view.findViewById(R.id.bt_bus102); Button bus_103=view.findViewById(R.id.bt_bus103); Button bus_104=view.findViewById(R.id.bt_bus104); bus_101.setOnClickListener(new View.OnClickListener() { @SuppressLint("NewApi") @Override public void onClick(View v) { layout.removeAllViews(); addView(); FrameLayout.LayoutParams layoutParams0=new FrameLayout.LayoutParams(140,140); Button button1=new Button(context); flag_bus1="true"; timer=new Timer(); timer.schedule(new TimerTask() { @Override public void run() { // (1) 使用handler发送消息 Message messagehh=new Message(); messagehh.what=101; messagehh.obj=flag_bus1; handler.sendMessage(messagehh); } },0,1000);//每隔一秒使用handler发送一下消息,也就是每隔一秒执行一次,一直重复执行 button1.setText("查看路况"); button1.setTextSize(10); button1.setBackground(getResources().getDrawable(R.drawable.rec_button2)); button1.setX(920); button1.setY(50); layout.addView(button1,layoutParams0); Button button2=new Button(context); button2.setText("取消导航"); button2.setTextSize(10); button2.setBackground(getResources().getDrawable(R.drawable.rec_button2)); button2.setX(920); button2.setY(200); layout.addView(button2,layoutParams0); button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { flag1="true"; timer=new Timer(); timer.schedule(new TimerTask() { @Override public void run() { // (1) 使用handler发送消息 Message message=new Message(); message.what=01; message.obj=flag1; handler.sendMessage(message); } },0,30000);//每隔一秒使用handler发送一下消息,也就是每隔一秒执行一次,一直重复执行 } }); button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { flag1="false";flag_bus1="true"; layout.removeAllViews(); addView(); } }); layout.addView(bus101); FrameLayout.LayoutParams layoutParams3=new FrameLayout.LayoutParams(80,80); img_start.setX(420); img_start.setY(0); layout.addView(img_start,layoutParams3); img_end.setX(130); img_end.setY(1350); layout.addView(img_end,layoutParams3); FrameLayout.LayoutParams layoutParams=new FrameLayout.LayoutParams(80,80); /* img_bus.setX(busX); img_bus.setY(busY);*/ layout.addView(img_bus,layoutParams); dialog.cancel(); } }); bus_102.setOnClickListener(new View.OnClickListener() { @SuppressLint("NewApi") @Override public void onClick(View v) { layout.removeAllViews(); addView(); layout.addView(bus102); FrameLayout.LayoutParams layoutParams0=new FrameLayout.LayoutParams(140,140); Button button1=new Button(context); flag_bus2="true"; timer=new Timer(); timer.schedule(new TimerTask() { @Override public void run() { // (1) 使用handler发送消息 Message messagehh=new Message(); messagehh.what=102; messagehh.obj=flag_bus2; handler.sendMessage(messagehh); } },0,1000);//每隔一秒使用handler发送一下消息,也就是每隔一秒执行一次,一直重复执行 button1.setText("查看路况"); button1.setTextSize(10); button1.setBackground(getResources().getDrawable(R.drawable.rec_button2)); button1.setX(920); button1.setY(700); layout.addView(button1,layoutParams0); Button button2=new Button(context); button2.setText("取消导航"); button2.setTextSize(10); button2.setBackground(getResources().getDrawable(R.drawable.rec_button2)); button2.setX(920); button2.setY(850); layout.addView(button2,layoutParams0); button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { flag2="true"; timer=new Timer(); timer.schedule(new TimerTask() { @Override public void run() { // (1) 使用handler发送消息 Message message=new Message(); message.what=02; message.obj=flag2; handler.sendMessage(message); } },0,30000);//每隔一秒使用handler发送一下消息,也就是每隔一秒执行一次,一直重复执行 } }); button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { flag2="flase";flag_bus2="false"; layout.removeAllViews(); addView(); } }); FrameLayout.LayoutParams layoutParams3=new FrameLayout.LayoutParams(80,80); img_start.setX(420); img_start.setY(0); layout.addView(img_start,layoutParams3); img_end.setX(950); img_end.setY(270); layout.addView(img_end,layoutParams3); /* img_bus.setX(busX); img_bus.setY(busY);*/ layout.addView(img_bus,layoutParams3); dialog.cancel(); } }); bus_103.setOnClickListener(new View.OnClickListener() { @SuppressLint("NewApi") @Override public void onClick(View v) { layout.removeAllViews(); addView(); layout.addView(bus103); FrameLayout.LayoutParams layoutParams0=new FrameLayout.LayoutParams(140,140); Button button1=new Button(context); flag_bus3="true"; timer=new Timer(); timer.schedule(new TimerTask() { @Override public void run() { // (1) 使用handler发送消息 Message messagehh=new Message(); messagehh.what=103; messagehh.obj=flag_bus3; handler.sendMessage(messagehh); } },0,1000);//每隔一秒使用handler发送一下消息,也就是每隔一秒执行一次,一直重复执行 button1.setText("查看路况"); button1.setTextSize(10); button1.setBackground(getResources().getDrawable(R.drawable.rec_button2)); button1.setX(920); button1.setY(50); layout.addView(button1,layoutParams0); Button button2=new Button(context); button2.setText("取消导航"); button2.setTextSize(10); button2.setBackground(getResources().getDrawable(R.drawable.rec_button2)); button2.setX(920); button2.setY(200); layout.addView(button2,layoutParams0); button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { flag3="true"; timer=new Timer(); timer.schedule(new TimerTask() { @Override public void run() { // (1) 使用handler发送消息 Message message=new Message(); message.what=03;message.obj=flag3; handler.sendMessage(message); } },0,30000);//每隔一秒使用handler发送一下消息,也就是每隔一秒执行一次,一直重复执行 } }); button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { flag3="false"; flag_bus3="false"; layout.removeAllViews(); addView(); } }); FrameLayout.LayoutParams layoutParams3=new FrameLayout.LayoutParams(80,80); img_start.setX(540); img_start.setY(0); layout.addView(img_start,layoutParams3); img_end.setX(780); img_end.setY(1280); layout.addView(img_end,layoutParams3); FrameLayout.LayoutParams layoutParams=new FrameLayout.LayoutParams(80,80); /* img_bus.setX(busX); img_bus.setY(busY);*/ layout.addView(img_bus,layoutParams); dialog.cancel(); } }); bus_104.setOnClickListener(new View.OnClickListener() { @SuppressLint("NewApi") @Override public void onClick(View v) { layout.removeAllViews(); addView(); layout.addView(bus104); FrameLayout.LayoutParams layoutParams0=new FrameLayout.LayoutParams(140,140); Button button1=new Button(context); flag_bus4="true"; timer=new Timer(); timer.schedule(new TimerTask() { @Override public void run() { // (1) 使用handler发送消息 Message messagehh=new Message(); messagehh.what=104; messagehh.obj=flag_bus4; handler.sendMessage(messagehh); } },0,1000);//每隔一秒使用handler发送一下消息,也就是每隔一秒执行一次,一直重复执行 button1.setText("查看路况"); button1.setTextSize(10); button1.setBackground(getResources().getDrawable(R.drawable.rec_button2)); button1.setX(920); button1.setY(50); layout.addView(button1,layoutParams0); Button button2=new Button(context); button2.setText("取消导航"); button2.setTextSize(10); button2.setBackground(getResources().getDrawable(R.drawable.rec_button2)); button2.setX(920); button2.setY(200); layout.addView(button2,layoutParams0); button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { flag="true"; timer=new Timer(); timer.schedule(new TimerTask() { @Override public void run() { // (1) 使用handler发送消息 Message messagehh=new Message(); messagehh.what=04; messagehh.obj=flag; handler.sendMessage(messagehh); } },0,30000);//每隔一秒使用handler发送一下消息,也就是每隔一秒执行一次,一直重复执行 } }); button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { flag="false"; flag_bus4="flase"; layout.removeAllViews(); addView(); } }); FrameLayout.LayoutParams layoutParams3=new FrameLayout.LayoutParams(80,80); img_start.setX(420); img_start.setY(0); layout.addView(img_start,layoutParams3); img_end.setX(840); img_end.setY(1330); layout.addView(img_end,layoutParams3); FrameLayout.LayoutParams layoutParams=new FrameLayout.LayoutParams(80,80); layout.addView(img_bus,layoutParams); dialog.cancel(); } }); } private void change(){ AlertDialog.Builder builder=new AlertDialog.Builder(MapActivity.this); View view1= LayoutInflater.from(MapActivity.this).inflate(R.layout.dialog_change_data,null); builder.setView(view1); final AlertDialog dialog=builder.create(); dialog.show(); Button bt_addtime=view1.findViewById(R.id.bt_add_time); Button bt_mintime=view1.findViewById(R.id.bt_minus_time); Button bt_addmoney=view1.findViewById(R.id.bt_add_money); Button bt_minmoney=view1.findViewById(R.id.bt_minus_money); Button bt_addSpeed=view1.findViewById(R.id.bt_add_speed); Button bt_minSpeed=view1.findViewById(R.id.bt_minus_speed); TextView tx_speed=view1.findViewById(R.id.tx_speed); TextView tx_time=view1.findViewById(R.id.tx_time); TextView tx_money=view1.findViewById(R.id.tx_money); tx_time.setText(light_time); tx_speed.setText(speed_data); tx_money.setText(park_data); bt_addSpeed.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { String speed=tx_speed.getText().toString(); int int_speed; if(speed.equals("")){ int_speed=0; }else{ int_speed=Integer.parseInt(speed); } tx_speed.setText(int_speed+1+""); } }); bt_minSpeed.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { String speed=tx_speed.getText().toString(); int int_speed; if(speed.equals("")){ int_speed=0; }else{ int_speed=Integer.parseInt(speed); } if(int_speed==0){ tx_speed.setText("0"); }else{ tx_speed.setText(int_speed-1+""); } } }); bt_addtime.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { String speed=tx_time.getText().toString(); int int_speed; if(speed.equals("")){ int_speed=0; }else{ int_speed=Integer.parseInt(speed); } tx_time.setText(int_speed+1+""); } }); bt_mintime.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { String speed=tx_time.getText().toString(); int int_speed; if(speed.equals("")){ int_speed=0; }else{ int_speed=Integer.parseInt(speed); } if(int_speed==0){ tx_time.setText("0"); }else{ tx_time.setText(int_speed-1+""); } } }); bt_addmoney.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { String speed=tx_money.getText().toString(); int int_speed; if(speed.equals("")){ int_speed=0; }else{ int_speed=Integer.parseInt(speed); } tx_money.setText(int_speed+1+""); } }); bt_minmoney.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { String speed=tx_money.getText().toString(); int int_speed; if(speed.equals("")){ int_speed=0; }else{ int_speed=Integer.parseInt(speed); } if(int_speed==0){ tx_money.setText("0"); }else{ tx_money.setText(int_speed-1+""); } } }); Button bt_cancel=view1.findViewById(R.id.bt_cancel); Button bt_sure=view1.findViewById(R.id.bt_sure); bt_cancel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { dialog.cancel(); } }); bt_sure.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { dialog.cancel(); } }); } private void initButton() { bt_bus=findViewById(R.id.bt_bus); bt_change=findViewById(R.id.bt_change); bt_stop=findViewById(R.id.bt_stop); bt_stop.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { stop(); } }); bt_change.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { //////////////// ////////这里获取公交车速度 红绿灯时长 停车场价格 httpUrlConnction_speed(); httpUrlConnction_park(); httpUrlConnction_light(); change(); } }); bt_bus.setOnClickListener(new View.OnClickListener() { @RequiresApi(api = Build.VERSION_CODES.O) @Override public void onClick(View v) { bus(); } }); } private void initView() { mapView=new Map(this); img_bus=new ImageView(this); img_bus.setImageDrawable(getResources().getDrawable(R.drawable.bus)); img_start=new ImageView(this); img_start.setImageDrawable(getResources().getDrawable(R.drawable.start)); img_end=new ImageView(this); img_end.setImageDrawable(getResources().getDrawable(R.drawable.end)); img_busStation=new ImageView(this); img_busStation.setImageDrawable(getResources().getDrawable(R.drawable.bus_station)); bus101=new Bus_101(this); bus102=new Bus_102(this); bus103=new Bus_103(this); bus104=new Bus_104(this); layout=findViewById(R.id.mapfl); addView(); } private void addView(){ layout.addView(mapView); FrameLayout.LayoutParams layoutParams2=new FrameLayout.LayoutParams(60,60); img_busStation.setX(470); img_busStation.setY(70); layout.addView(img_busStation,layoutParams2); ImageView img_stop=new ImageView(this); img_stop.setImageDrawable(getResources().getDrawable(R.drawable.stop)); img_stop.setX(310); img_stop.setY(685); layout.addView(img_stop,layoutParams2); } private void initToolBar(){ toolbar=findViewById(R.id.toolbar); setSupportActionBar(toolbar); final DrawerLayout drawerLayout=(DrawerLayout)findViewById(R.id.mapdl); final ActionBarDrawerToggle toggle=new ActionBarDrawerToggle(MapActivity.this,drawerLayout,toolbar, R.string.navigation_drawer_open,R.string.navigation_drawer_close); toggle.syncState(); final NavigationView navigationView=findViewById(R.id.user_nav); View headerView = navigationView.getHeaderView(0); TextView tx_name=headerView.findViewById(R.id.nav_name); TextView tx_email=headerView.findViewById(R.id.nav_email); tx_name.setText("ssszzzhhh"); tx_email.setText("1017183127@qq.com"); navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(@NonNull MenuItem item) { switch (item.getItemId()){ case R.id.nav_change_user: finish(); break; case R.id.nav_logout: finish(); break; case R.id.nav_bus: bus(); drawerLayout.closeDrawers(); break; case R.id.nav_stop: stop(); drawerLayout.closeDrawers(); break; case R.id.nav_change: change(); drawerLayout.closeDrawers(); } return true; } }); } @Override public boolean onOptionsItemSelected(MenuItem item) { int id=item.getItemId(); switch (id){ case R.id.action_logout: finish(); } return super.onOptionsItemSelected(item); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.user_menu,menu); return true; } @Override protected void onDestroy() { super.onDestroy(); timer.cancel(); } public void httpUrlConnction_speed() { new Thread() { public void run() { try { java.util.Map map = new HashMap(); // 成对放入多个key-value对 map.put("busname" , "K101"); //使用Gson 添加 依赖 Gson gson = new Gson(); //使用Gson将对象转换为json字符串 String json = gson.toJson(map); //MediaType 设置Content-Type 标头中包含的媒体类型值 RequestBody requestBody = FormBody.create(MediaType.parse("application/json; charset=utf-8") , json); Request request = new Request.Builder() .url("http://139.199.27.66:8081/bus")//请求的url .post(requestBody) .build(); //创建/Call Call call = SignInFragment.okHttpClient.newCall(request); //加入队列 异步操作 call.enqueue(new Callback() { //请求错误回调方法 @Override public void onFailure(Call call, IOException e) { System.out.println("连接失败"); } @Override public void onResponse(Call call, Response response) throws IOException { String responseData=response.body().string(); System.out.println("nononononononononnoononnono"); System.out.println(responseData+"yes"); String back_data=responseData.substring(20,responseData.indexOf("}")); speed_data=back_data.substring(0,back_data.indexOf(".")); System.out.println(back_data); /* System.out.println("hhhhhxxr"); String back_data=null; if(responseData.contains("登录成功")){ back_data="登陆成功"; }else if(responseData.contains("密码错误")){ back_data="密码错误"; }else if(responseData.contains("用户名不存在")) { back_data = "用户名不存在"; } Message message = Message.obtain(); message.what = 400; message.obj = back_data; handler.sendMessage(message);*/ }}); } catch (Exception e) { e.printStackTrace(); } } }.start(); } public void httpUrlConnction_light() { new Thread() { public void run() { try { java.util.Map map = new HashMap(); // 成对放入多个key-value对 map.put("number" , "1-1"); //使用Gson 添加 依赖 Gson gson = new Gson(); //使用Gson将对象转换为json字符串 String json = gson.toJson(map); //MediaType 设置Content-Type 标头中包含的媒体类型值 RequestBody requestBody = FormBody.create(MediaType.parse("application/json; charset=utf-8") , json); Request request = new Request.Builder() .url("http://139.199.27.66:8081/stop/time")//请求的url .post(requestBody) .build(); //创建/Call Call call = SignInFragment.okHttpClient.newCall(request); //加入队列 异步操作 call.enqueue(new Callback() { //请求错误回调方法 @Override public void onFailure(Call call, IOException e) { System.out.println("连接失败"); } @Override public void onResponse(Call call, Response response) throws IOException { String responseData=response.body().string(); System.out.println("nononononononononnoononnono"); System.out.println(responseData+"yes"); light_time=responseData.substring(34,responseData.indexOf("}")); /* System.out.println("hhhhhxxr"); String back_data=null; if(responseData.contains("登录成功")){ back_data="登陆成功"; }else if(responseData.contains("密码错误")){ back_data="密码错误"; }else if(responseData.contains("用户名不存在")) { back_data = "用户名不存在"; } Message message = Message.obtain(); message.what = 400; message.obj = back_data; handler.sendMessage(message);*/ }}); } catch (Exception e) { e.printStackTrace(); } } }.start(); } public void httpUrlConnction_parkFee() { new Thread() { public void run() { try { java.util.Map map = new HashMap(); // 成对放入多个key-value对 map.put("parkname" , "park1"); map.put("parktime" , time_park); //使用Gson 添加 依赖 Gson gson = new Gson(); //使用Gson将对象转换为json字符串 String json = gson.toJson(map); //MediaType 设置Content-Type 标头中包含的媒体类型值 RequestBody requestBody = FormBody.create(MediaType.parse("application/json; charset=utf-8") , json); Request request = new Request.Builder() .url("http://139.199.27.66:8081/park/circulate")//请求的url .post(requestBody) .build(); //创建/Call Call call = SignInFragment.okHttpClient.newCall(request); //加入队列 异步操作 call.enqueue(new Callback() { //请求错误回调方法 @Override public void onFailure(Call call, IOException e) { System.out.println("连接失败"); } @Override public void onResponse(Call call, Response response) throws IOException { String responseData=response.body().string(); System.out.println("nononononononononnoononnono"); System.out.println(responseData+"yes"); String back_data=responseData.substring(19,responseData.indexOf("}")); sumMoney_data=back_data.substring(0,back_data.indexOf(".")); System.out.println(back_data); /* System.out.println("hhhhhxxr"); String back_data=null; if(responseData.contains("登录成功")){ back_data="登陆成功"; }else if(responseData.contains("密码错误")){ back_data="密码错误"; }else if(responseData.contains("用户名不存在")) { back_data = "用户名不存在"; } Message message = Message.obtain(); message.what = 400; message.obj = back_data; handler.sendMessage(message);*/ }}); } catch (Exception e) { e.printStackTrace(); } } }.start(); } public void httpUrlConnction_park() { new Thread() { public void run() { try { java.util.Map map = new HashMap(); // 成对放入多个key-value对 map.put("parkname" , "park1"); //使用Gson 添加 依赖 Gson gson = new Gson(); //使用Gson将对象转换为json字符串 String json = gson.toJson(map); //MediaType 设置Content-Type 标头中包含的媒体类型值 RequestBody requestBody = FormBody.create(MediaType.parse("application/json; charset=utf-8") , json); Request request = new Request.Builder() .url("http://139.199.27.66:8081/park")//请求的url .post(requestBody) .build(); //创建/Call Call call = SignInFragment.okHttpClient.newCall(request); //加入队列 异步操作 call.enqueue(new Callback() { //请求错误回调方法 @Override public void onFailure(Call call, IOException e) { System.out.println("连接失败"); } @Override public void onResponse(Call call, Response response) throws IOException { String responseData=response.body().string(); System.out.println("nononononononononnoononnono"); System.out.println(responseData+"yes"); String back_data=responseData.substring(19,responseData.indexOf("}")); park_data=back_data.substring(0,back_data.indexOf(".")); System.out.println(back_data); }}); } catch (Exception e) { e.printStackTrace(); } } }.start(); } public void httpUrlConnction_LightGR(String light,int i) { new Thread() { public void run() { try { java.util.Map map = new HashMap(); // 成对放入多个key-value对 map.put("number" , light); //使用Gson 添加 依赖 Gson gson = new Gson(); //使用Gson将对象转换为json字符串 String json = gson.toJson(map); //MediaType 设置Content-Type 标头中包含的媒体类型值 RequestBody requestBody = FormBody.create(MediaType.parse("application/json; charset=utf-8") , json); Request request = new Request.Builder() .url("http://139.199.27.66:8081/stop")//请求的url .post(requestBody) .build(); //创建/Call Call call = SignInFragment.okHttpClient.newCall(request); //加入队列 异步操作 call.enqueue(new Callback() { //请求错误回调方法 @Override public void onFailure(Call call, IOException e) { System.out.println("连接失败"); } @Override public void onResponse(Call call, Response response) throws IOException { String responseData=response.body().string(); System.out.println("nononononononononnoononnono"); System.out.println(responseData+"yes"); String data=responseData.substring(24,responseData.indexOf("\"}")); lights[i]=data; System.out.print(lights[i]+"dadadadaadadadadadaa"); /* System.out.println("hhhhhxxr"); String back_data=null; if(responseData.contains("登录成功")){ back_data="登陆成功"; }else if(responseData.contains("密码错误")){ back_data="密码错误"; }else if(responseData.contains("用户名不存在")) { back_data = "用户名不存在"; } Message message = Message.obtain(); message.what = 400; message.obj = back_data; handler.sendMessage(message);*/ }}); } catch (Exception e) { e.printStackTrace(); } } }.start(); } public void httpUrlConnction_car(String urlll) { new Thread() { public void run() { try { FormBody.Builder formBody = new FormBody.Builder(); Request request = new Request.Builder() .url("http://139.199.27.66:8081/bus/"+urlll)//请求的url .post(formBody.build()) .build(); //创建/Call Call call = SignInFragment.okHttpClient.newCall(request); //加入队列 异步操作 call.enqueue(new Callback() { //请求错误回调方法 @Override public void onFailure(Call call, IOException e) { System.out.println("连接失败"); } @Override public void onResponse(Call call, Response response) throws IOException { String responseData=response.body().string(); System.out.println("nononononononononnoononnono"); System.out.println(responseData+"yes"); String back_data=responseData.substring(responseData.indexOf("[")+1,responseData.indexOf("]")); bus_xs=back_data.substring(0,back_data.indexOf(",")); bus_ys=back_data.substring(back_data.indexOf(",")+1); bus_x=Integer.parseInt(bus_xs); bus_y=Integer.parseInt(bus_ys); System.out.println(back_data); }}); } catch (Exception e) { e.printStackTrace(); } } }.start(); } }