我有一个几乎总是需要知道用户位置的应用程序。
当我需要访问某个位置时,我会这样做:
final AlertDialog.Builder builder = new AlertDialog.Builder(
MapScreen.this);
builder.setTitle("MyAppName");
builder.setMessage("The location service is off. Do you want to turn it on?");
builder.setPositiveButton("Enable location",
new DialogInterface.OnClickListener() {
@Override
public void onClick(
final DialogInterface dialogInterface,
final int i) {
startActivity(new Intent(
android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS));
}
});
builder.setNegativeButton("Continue without location", null);
builder.create().show();
但是,GPS 给我的一些信息并不总是足够精确。 Wi-Fi 总是给我足够的精确度,所以我想要求用户像我要求他们打开位置一样打开 Wi-Fi。我不想只打开它,我希望用户收到有关它的通知,并手动启用它。
有没有把WiFi菜单带给用户的Intent?
最佳答案
以下 Intent 显示无线设置,例如 Wi-Fi、蓝牙和移动网络:
startActivity(new Intent(Settings.ACTION_WIRELESS_SETTINGS));
完整的设置列表:https://developer.android.com/reference/android/provider/Settings.html
有关startActivity
方法的文档:
https://developer.android.com/reference/android/app/Activity.html#startActivity(android.content.Intent)
(请记住 startActivity
只是扔了就忘了,如果您想捕获用户在那里所做的响应,您可以改为调用 startActivityForResult
,可能不会在这种情况下需要)
关于android - 要求用户打开 Wi-Fi,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16539196/