当前位置:  编程技术>移动开发
本页文章导读:
    ▪百度map之一百度map搭建开发环境(根据老罗视频整理)        百度地图之一百度地图搭建开发环境(根据老罗视频整理)视频地址:http://www.verycd.com/files/0939a15c475c93832b4d1acd104c9df4135088640 百度地图移动版介绍:   1.百度地图移动版API是一套基于移动互联网.........
    ▪ 关于*Prefix.pch has been modified since the precompiled header was built的异常        关于***-Prefix.pch has been modified since the precompiled header was built的错误自己在Xcode4.5上写的ios小程序,由于在两台机器上进行了修改。当从一台机器上把源码拷贝到另一台机器上时,出现了如下错.........
    ▪ STM32 外部中断 易疏失总结       STM32 外部中断 易出错总结 前言:这些问题都是我之前在工作中遇到的,后来觉得需要总结,自己记忆不好,所以在这个给自己打个mark。 一:触发方式 STM32 的外部中断是通过边沿来触发的.........

[1]百度map之一百度map搭建开发环境(根据老罗视频整理)
    来源: 互联网  发布时间: 2014-02-18
百度地图之一百度地图搭建开发环境(根据老罗视频整理)
视频地址:http://www.verycd.com/files/0939a15c475c93832b4d1acd104c9df4135088640
百度地图移动版介绍:
  1.百度地图移动版API是一套基于移动互联网设备的应用程序接口,支持ios/android平台。
  2.通过该接口,您可以轻松访问百度服务和数据,构建功能丰富、交互性强的地图应用程序。百度地图移动API不仅包含构建地图的基本接口,还提供了诸如定位服务、本地搜索、路线规划等数据服务,你可以根据自己的需要进行选择。
关于百度地图修改的BUG
  1.百度地图移动版API 1.3.3版本(Android)
        2.修改国外gps坐标转为百度坐标错误的问题
        3.添加搜索在线建议词功能
        4.关于1.3.3版本升级的详细内容和历史升级请参考更新日志。在类参考文档中,我们也增加了接口说明。
百度地图官网地址:http://dev.baidu.com/wiki/imap/index.php
新地址:http://developer.baidu.com/map/
        1. 配置Manifest.xml 文件
 添加百度地图开发的授权:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" ></uses-permission> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" ></uses-permission> 
<uses-permission android:name="android.permission.INTERNET" ></uses-permission> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" ></uses-permission> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" ></uses-permission> 
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" ></uses-permission> 
<uses-permission android:name="android.permission.READ_PHONE_STATE" ></uses-permission>

添加对屏幕的支持:
<supports-screens android:largeScreens="true"android:normalScreens="true" android:smallScreens="true"android:resizeable="true" android:anyDensity="true"/>
2. 在libs中添加 百度地图的jar包 baidumapapi.jar
3. 在布局文件main.xml中添加显示
<com.baidu.mapapi.MapViewandroid:id="@+id/bmapView"android:layout_width="fill_parent"android:layout_height="fill_parent"android:clickable="true"/>
4 .Activity中的定义
   类 BMapManager 是一个地图引擎管理类,通过此类的start()方法,可以打开地图API;通过此类的stop()方法,可以终止百度地图API,调用此函数后,不会再发生回调。 通过init(String strKey,MKGeneralListener listener)方法初始化。在程序退出的时候调用此类中destory()方法。
   接口 MKGeneralListener 用于监听授权之后的结果,察看Key的状态是否正确。300 表示验证失败。
  类MapActivity  用来显示管理MapView类中activity处理逻辑的基础类。其中的initMapActivity(BMapManager bmapMan)用于初始化Activity。
  类GeoPoint 表示一个地理坐标点,存放经度和纬度,以微度的整数形式存储
注意事项:
  地图、定位、搜索功能都需要BMapManager来管理,BMapManager提供四个接口,init,start,stop,destory。建议在Appliaction里生成BMapManager对象并初始化,在程序退出时调用destory,在需要使用sdk功能的activity的onCreate里调用start,onDestory调用stop,或者onResume/onPause分别调用start和stop方法。
MainActivity:

package com.android.android_baidu_demo;
 
import com.baidu.mapapi.BMapManager;
import com.baidu.mapapi.GeoPoint;
import com.baidu.mapapi.MKGeneralListener;
import com.baidu.mapapi.MapActivity;
import com.baidu.mapapi.MapController;
import com.baidu.mapapi.MapView;
 
import android.os.Bundle;
import android.widget.Toast;
 
public class MainActivity extends MapActivity {
 
//添加百度地图的相关控件
private MapView mapView;
//加载地图的引擎
private BMapManager bMapManager;
//百度地图的key
private String KeyString = "8C426377B3526B6BF3672C9BA3BB544D1E8289CD";
//在百度地图上添加一些控件,比如是放大或者缩小的控件
private MapController mapController;
 
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mapView = (MapView) this.findViewById(R.id.bmapView);
bMapManager = new BMapManager(MainActivity.this    );
//必须要加载key
bMapManager.init(KeyString, new MKGeneralListener() {
 
public void onGetPermissionState(int arg0) {
if(arg0==300){
Toast.makeText(MainActivity.this, "输入的key有错,请核实!!", 1).show();
}
}
 
public void onGetNetworkState(int arg0) {
 
}
});
this.initMapActivity(bMapManager);
//表示可以设置缩放功能
mapView.setBuiltInZoomControls(true);
mapController = mapView.getController();
//需要定义一个经纬度:北京天安门
GeoPoint geoPoint = new GeoPoint((int)(39.915*1E6),(int)(116.404*1E6));
mapController.setCenter(geoPoint);//设置一个中心点
mapController.setZoom(12);//设置缩放级别是12级别
}
 
@Override
protected void onDestroy() {
super.onDestroy();
if(bMapManager!=null){
bMapManager.destroy();
bMapManager = null;
}
}
 
@Override
protected void onResume() {
super.onResume();
if(bMapManager!=null){
bMapManager.start();
}
}
 
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
if(bMapManager!=null){
bMapManager.stop();
}
}
 
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}
 
 
}


 源代码下载:http://download.csdn.net/detail/wenquan125/4786152


    
[2] 关于*Prefix.pch has been modified since the precompiled header was built的异常
    来源: 互联网  发布时间: 2014-02-18
关于***-Prefix.pch has been modified since the precompiled header was built的错误

自己在Xcode4.5上写的ios小程序,由于在两台机器上进行了修改。当从一台机器上把源码拷贝到另一台机器上时,出现了如下错误。

fatal error: file'/Volumes/work/iosdev/LoveWeather/LoveWeather/LoveWeather-Prefix.pch' has beenmodified since the precompiled header was built

 在网上没有找到合适的解决方法之后,自己试着做了如下修改,程序运行正常了。

错误修改

找到***-Prefix.pch文件,把中间的

#ifdef __OBJC__

    #import <UIKit/UIKit.h>

    #import <Foundation/Foundation.h>

#endif

注释掉。运行程序。Bulid success之后。程序停止运行。解开注释。再运行一次就好了。


    
[3] STM32 外部中断 易疏失总结
    来源: 互联网  发布时间: 2014-02-18
STM32 外部中断 易出错总结


前言:这些问题都是我之前在工作中遇到的,后来觉得需要总结,自己记忆不好,所以在这个给自己打个mark。

一:触发方式

STM32 的外部中断是通过边沿来触发的,不支持电平触发;

二:外部中断分组

STM32 的每一个GPIO都能配置成一个外部中断触发源,STM32 通过根据引脚的序号不同将众多中断触发源分成不同的组,比如:PA0,PB0,PC0,PD0,PE0,PF0,PG0为第一组,那么依此类推,我们能得出一共有16 组,STM32 规定,每一组中同时只能有一个中断触发源工作,那么,最多工作的也就是16个外部中断。

STM32 分组和对应中断处理函数分配:

管脚

中断标志

中断处理函数分配

PA0~PG0

EXTI0

EXTI0_IRQHandler

PA1~PG1

EXTI1

EXTI1_IRQHandler

PA2~PG2

EXTI2

EXTI2_IRQHandler

PA3~PG3

EXTI3

EXTI3_IRQHandler

PA4~PG4

EXTI4

EXTI4_IRQHandler

PA5~PG5

EXTI5

 EXTI9_5_IRQHandler

PA6~PG6

EXTI6

PA7~PG7

EXTI7

PA8~PG8

EXTI8

PA9~PG9

EXTI9

PA10~PG10

EXTI10

EXTI15_10_IRQHandler

PA11~PG11

EXTI11

PA12~PG12

EXTI12

PA13~PG13

EXTI13

PA14~PG14

EXTI14

PA15~PG15

EXTI15

三:外部中断的配置过程

l 配置触发源 -GPIO

触发源为通过GPIO端口输入,所以,要配置GPIO的模式,输入方式,输入方式有以下几种:

1.GPIO_Mode_AIN ,模拟输入(ADC模拟输入,或者低功耗下省电)

2.GPIO_Mode_IN_FLOATING ,浮空输入

3.GPIO_Mode_IPD = 0x28,带下拉输入 

4.GPIO_Mode_IPU = 0x48,带上拉输入

l 引脚与外部中断关联

l 外部中断AFIO时钟开启

l 外部中断配置

这个主要是中断线路选择,中断触发方式,中断使能。

l 中断优先级配置 NVIC

l 中断处理函数的编写。

四:外部中断函数不能进入的原因分析

结合我工作中的遇到的问题可以分为:

1)GPIO或者AFIO的时钟没有开启;

2)GPIO和配置的中断线路不匹配;

3)中断触发方式和实际不相符合;

4)中断处理函数用库函数时,写错,经常可能出现数字和字母之间没有下划线;

5)外部中断是沿触发,有可能不能检测到沿,比如 中断线是低电平(浮空输入),触发是下降沿触发,可能会出现一直是低电平,高电平的时候是一样的情况,电平持续为高电平;

6)没有用软件中断来触发外部中断,调用函数EXTI_GenerateSWInterrupt;,因为软件中断先于边沿中断处理。


    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3