ANDROID_MARS学习笔记_S03_004_getAllProviders、LOCATIONLISTENER、getBestProvider
一、代码
1.xml
(1)activity_main.xml
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
2.java
(1)MainActivity.java
package com.location2; import java.util.Iterator;
import java.util.List; import android.app.Activity;
import android.content.Context;
import android.location.Criteria;
import android.location.LocationManager;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button; public class MainActivity extends Activity {
private Button scanProvider = null;
private Button bestProvider = null;
private LocationManager locationManager = null; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
scanProvider = (Button)findViewById(R.id.ScanProvidersButton);
bestProvider = (Button)findViewById(R.id.bestProviderButton);
locationManager = (LocationManager) MainActivity.this.getSystemService(Context.LOCATION_SERVICE); scanProvider.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
List<String> providers = locationManager.getAllProviders();
System.out.println("providers----->");
for(Iterator<String> it = providers.iterator() ; it.hasNext() ; ) {
System.out.println(it.next());
}
}
}); bestProvider.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setPowerRequirement(Criteria.POWER_LOW);
criteria.setAltitudeRequired(false);
criteria.setSpeedRequired(false);
criteria.setCostAllowed(false);
//获得最好的provider,第二个参数表示是否考虑provider可用
String provider = locationManager.getBestProvider(criteria, false);
System.out.println("best provider ---> "+provider);
}
});
}
}
package com.location2;
import java.util.Iterator;import java.util.List;
import android.app.Activity;import android.content.Context;import android.location.Criteria;import android.location.LocationManager;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;
public class MainActivity extends Activity {private Button scanProvider = null;private Button bestProvider = null;private LocationManager locationManager = null;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main); scanProvider = (Button)findViewById(R.id.ScanProvidersButton); bestProvider = (Button)findViewById(R.id.bestProviderButton); locationManager = (LocationManager) MainActivity.this.getSystemService(Context.LOCATION_SERVICE); scanProvider.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {List<String> providers = locationManager.getAllProviders();System.out.println("providers----->");for(Iterator<String> it = providers.iterator() ; it.hasNext() ; ) {System.out.println(it.next());}}}); bestProvider.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {Criteria criteria = new Criteria();criteria.setAccuracy(Criteria.ACCURACY_FINE);criteria.setPowerRequirement(Criteria.POWER_LOW);criteria.setAltitudeRequired(false);criteria.setSpeedRequired(false);criteria.setCostAllowed(false);//获得最好的provider,第二个参数表示是否考虑provider可用String provider = locationManager.getBestProvider(criteria, false);System.out.println("best provider ---> "+provider);}});}}
ANDROID_MARS学习笔记_S03_004_getAllProviders、LOCATIONLISTENER、getBestProvider的更多相关文章
- ANDROID_MARS学习笔记_S03_003_LocationManager、LocationListener
一.简介 二.代码1.xml (1)AndroidManifest.xml 增加 <uses-permission android:name="android.permission.A ...
- ANDROID_MARS学习笔记_S01_012_RatingBar
1.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns: ...
- ANDROID_MARS学习笔记_S01_012_SeekBar
1.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns: ...
- ANDROID_MARS学习笔记_S01_011ProgressBar
文档是这样来设置样式 <ProgressBar android:layout_width="wrap_content" android:layout_height=" ...
- ANDROID_MARS学习笔记_S01_010日期时间控件
1.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns: ...
- ANDROID_MARS学习笔记_S01_009Relative_LAYOUT例子
1. <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android ...
- ANDROID_MARS学习笔记_S01_008Linear_layout例子
1.netstone_layout.xml <?xml version="1.0" encoding="utf-8"?> <LinearLay ...
- ANDROID_MARS学习笔记_S01_007Linear_layout嵌套与layout_weight的设置
一.介绍 二.1.linear_layout.xml <?xml version="1.0" encoding="utf-8"?> <Line ...
- ANDROID_MARS学习笔记_S01_006ImageView
一.ImageView介绍 设置scalType Must be one of the following constant values. Constant Value Description ma ...
随机推荐
- euqals和hashcode
hashcode这个方法是用来鉴定2个对象是否相等的. 那你会说,不是还有equals这个方法吗? 不错,这2个方法都是用来判断2个对象是否相等的.但是他们是有区别的. 一般来讲,equals这个方法 ...
- NChome如何创建单据跟主子表还有扩展开发要怎么弄?
单据表跟主子表笔记做在笔记本里面 扩展开发在网络备份里面
- cookie和session可能需要知道的知识
做Android程序员,了解服务器的知识是相当重要的,比如cookie和session. 首先介绍一点背景知识,我们知道HTTP的连接是无状态的,HTTPS只是增加了安全,有了SSL证书来验证,作为服 ...
- C#微信公众号开发 -- (五)自定义菜单创建
公众号中,底部都是有自己定义的功能按钮,通过点击某个按钮来实现指定的业务逻辑操作. 下面就来说说这些按钮是怎样放到微信公众平台的,还是先来看看微信的官方解释: 请注意: 1.自定义菜单最多包括3个一级 ...
- C# 的static与单例模式
C# 的static与单例模式 static是静态对象,在类被第一次使用,或者第一次被实例化时执行 /// <summary> /// 线程安全的单件模式 /// </summary ...
- HTML标签_Form
理解HTML是如何跳转到java程序中去的:Form常用HTML标签的作用<body> <form action="servlet/UploadServlet" ...
- asp.net中Get请求和Post请求
Get和Post请求的区别:Get请求因为传输的数据在URL中,因此不安全,而且多数浏览器有限制其长度,最长为2KB.通过Get请求获取数据的方式:string strName=context.Req ...
- Javase中多态polymorphic的简单介绍
-------------多态----------------- (1)面向对象三大核心思想: 1.封装 2.继承 3.多态 (2)多态定义:父类的引用指向子类的对象. (3)引用指的是父 ...
- ASP.NET MVC5总结(二)@HTML扩展
1.@Html.AntiForgeryToken() 用来防止跨站请求伪造(CSRF)攻击的一个措施 2.@Html.ValidationSummary(true) 主要用来 (1). 显示后台 Mo ...
- 04_过滤器Filter_02_Filter解决中文乱码问题
[过滤器解决中文乱码问题实例] [工程截图] [web.xml] <?xml version="1.0" encoding="UTF-8"?> &l ...