我正在使用带有onsen-ui,jquery和javascript的cordova 6。所以我想创建一个简单的登录站点,但如果gps处于活动状态,我需要得到。我想知道我必须做哪些验证。现在我在ons.ready()事件上执行以下操作。
var options = {maximumAge: 0, timeout: 3000, enableHighAccuracy:true};
navigator.geolocation.getCurrentPosition(onGPSCheckSuccess, onGPSCheckError, options);
function onGPSCheckSuccess()
{
console.log("Encontro el GPS Activado");
}
function onGPSCheckError()
{
console.log("Error al chequear el GPS");
gpsDetect.switchToLocationSettings(onSwitchToLocationSettingsSuccess, onSwitchToLocationSettingsError);
}
function onSwitchToLocationSettingsSuccess() {
}
function onSwitchToLocationSettingsError(e) {
console.log("Error al activar el GPS");
alert("Error onSwitchToLocationSettingsError: "+e);
}
那么,如果在我的主页面加载之前有办法做到这一点吗?
此致
答案 0 :(得分:1)
实际上,您可以进行简单的页面重定向。您可以将该代码放在public class NoticeAdapter extends ArrayAdapter<NoticeEntity> {
private Context context;
public NoticeAdapter(Context context, int resourceId,
ArrayList<NoticeEntity> items) {
super(context, resourceId, items);
this.context = context;
}
/* private view holder class */
private class ViewHolder {
TextView heading;
TextView content;
TextView date;
}
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
NoticeEntity entity = getItem(position);
LayoutInflater mInflater = (LayoutInflater) context
.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
if (convertView == null) {
convertView = mInflater.inflate(R.layout.custom_notice, null);
holder = new ViewHolder();
holder.heading = (TextView) convertView
.findViewById(R.id.txtvw_notice_heading);
holder.content = (TextView) convertView
.findViewById(R.id.txtvw_notice_content);
holder.date = (TextView) convertView
.findViewById(R.id.txtvw_notice_date);
convertView.setTag(holder);
} else
holder = (ViewHolder) convertView.getTag();
holder.heading.setText(entity.getNotice_heading());
holder.content.setText(entity.getNotice_content());
holder.date.setText(entity.getNotice_date());
return convertView;
}
}
文件中,然后在页面之前调用该文件。如果成功,则使用.htm
存储结果,然后重定向到所需的页面,并从localStorage
检索结果。
答案 1 :(得分:0)
我认为最好的方法是使用以下代码:
document.addEventListener("init", function(event){
if(event.target.id=='yourHomePageID') {
var options = {maximumAge: 0, timeout: 3000, enableHighAccuracy:true};
navigator.geolocation.getCurrentPosition(onGPSCheckSuccess, onGPSCheckError, options);
}
},false);
通过使用主页的init函数,这实际上在ons.ready()
之前运行了一点,正如@ fran-dios所讨论的那样:
Onsen 2.0 - Adding event listener to Ons-Switch with Javascript
希望这会有所帮助。这是基于上述问题我正在做的事情,它解决了我的问题。