`

开放接口使用积累

阅读更多

个推(消息推送)

 
Demo快速入门说明;
 
步骤:
  1. 用自己的开发者账号登陆个推,进入控制界面;
  2. 在左侧菜单中选择 " 应用管理 ==> 应用管理 ==> 登记新应用"
    在 "应用名称" 和 "应用标识" 中填入相应内容;
    名称随便取,标识是app的package name;
  3. 登记完新应用后,单击 " 应用管理 ==> 应用管理 ==> 应用详情 " 中看到各应用对应的详情信息;
  4. 下载SDK,解压,在文件夹中的 " 客户端/需要导入的资源 " 中,将armeabi文件夹及GetuiExt-x.x.x.jar、GetuiSdk-x.x.x.x.jar拷贝到项目中的libs目录(若无该目录,自建一个);
  5. 在项目的AndroidManifest中增加如下权限和服务声明:
    权限:
    1. <uses-permissionandroid:name="android.permission.INTERNET"/>
    2. <uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
    3. <uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>
    4. <uses-permissionandroid:name="android.permission.CHANGE_WIFI_STATE"/>
    5. <uses-permissionandroid:name="android.permission.WAKE_LOCK"/>
    6. <uses-permissionandroid:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
    7. <uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    8. <uses-permissionandroid:name="android.permission.VIBRATE"/>
    9. <uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/>
    10. <uses-permissionandroid:name="getui.permission.GetuiService"/>
    11. <uses-permissionandroid:name="android.permission.GET_TASKS"/>
    12. <!--自定义权限-->
    13. <permission
    14. android:name="getui.permission.GetuiService"
    15. android:protectionLevel="normal">
    16. </permission>

    在<Application>标签内添加服务声明,并修改相应app信息(参见推控制台中的 " 应用管理 ==> 应用管理 ==> 应用详情 " ):
    1. <!--个推SDK配置开始-->
    2. <!--配置第三方应用参数属性-->
    3. <meta-data
    4. android:name="PUSH_APPID"
    5. android:value="YOUR_APPID"/><!--替换为第三方应用的APPID-->
    6. <meta-data
    7. android:name="PUSH_APPKEY"
    8. android:value="YOUR_APPKEY"/><!--替换为第三方应用的APPKEY-->
    9. <meta-data
    10. android:name="PUSH_APPSECRET"
    11. android:value="YOUR_APPSECRET"/><!--替换为第三方应用的APPSECRET-->
    12. <meta-data
    13. android:name="PUSH_GROUPID"
    14. android:value=""/>
    15. <!--配置SDK核心服务-->
    16. <service
    17. android:name="com.igexin.sdk.PushService"
    18. android:exported="true"
    19. android:label="NotificationCenter"
    20. android:process=":pushservice">
    21. </service>
    22. <receiver
    23. android:name="com.igexin.sdk.PushReceiver">
    24. <intent-filter>
    25. <actionandroid:name="android.intent.action.BOOT_COMPLETED"/>
    26. <actionandroid:name="android.net.conn.CONNECTIVITY_CHANGE"/>
    27. <actionandroid:name="android.intent.action.USER_PRESENT"/>
    28. <actionandroid:name="com.igexin.sdk.action.refreshls"/>
    29. </intent-filter>
    30. </receiver>
    31. <receiver
    32. android:name="com.igexin.sdk.PushReceiver"
    33. android:exported="false">
    34. <intent-filter>
    35. <actionandroid:name="com.igexin.sdk.action.pushmanager"/>
    36. </intent-filter>
    37. </receiver>
    38. <activity
    39. android:name="com.igexin.sdk.PushActivity"
    40. android:excludeFromRecents="true"
    41. android:exported="false"
    42. android:process=":pushservice"
    43. android:taskAffinity="com.igexin.sdk.PushActivityTask"
    44. android:theme="@android:style/Theme.Translucent.NoTitleBar">
    45. </activity>
    46. <!--配置弹框activity-->
    47. <activity
    48. android:name="com.igexin.getuiext.activity.GetuiExtActivity"
    49. android:configChanges="orientation|keyboard|keyboardHidden"
    50. android:excludeFromRecents="true"
    51. android:process=":pushservice"
    52. android:taskAffinity="android.task.myServicetask"
    53. android:theme="@android:style/Theme.Translucent.NoTitleBar"
    54. android:exported="false"/>
    55. <receiver
    56. android:name="com.igexin.getuiext.service.PayloadReceiver"
    57. android:exported="false">
    58. <intent-filter>
    59. <!--这个com.igexin.sdk.action.7fjUl2Z3LH6xYy7NQK4ni4固定,不能修改-->
    60. <actionandroid:name="com.igexin.sdk.action.7fjUl2Z3LH6xYy7NQK4ni4"/>
    61. <!--替换为android:name="com.igexin.sdk.action.第三方的appId"-->
    62. <actionandroid:name="com.igexin.sdk.action.YOUR_APPID"/>
    63. </intent-filter>
    64. </receiver>
    65. <service
    66. android:name="com.igexin.getuiext.service.GetuiExtService"
    67. android:process=":pushservice"/>
    68. <!--个推download模块配置-->
    69. <service
    70. android:name="com.igexin.download.DownloadService"
    71. android:process=":pushservice"/>
    72. <receiver
    73. android:name="com.igexin.download.DownloadReceiver">
    74. <intent-filter>
    75. <actionandroid:name="android.net.conn.CONNECTIVITY_CHANGE"/>
    76. </intent-filter>
    77. </receiver>
    78. <provider
    79. android:name="com.igexin.download.DownloadProvider"
    80. android:process=":pushservice"
    81. android:authorities="downloads.com.getui.demo"/><!--替换为downloads.第三方包名-->
    82. <!--===========================================================================-->
  6. 初始化SDK
    1. importcom.igexin.sdk.PushManager;
    建议在程序住Activity中的onCreate()方法进行初始化,该方法必须在Activity或Service中进行调用,不建议在Application类中使用:
    1. PushManager.getInstance().initialize(this.getApplicationContext());
  7. 配置到此完成,之后在个推控制台中 " 推送通知 ==> 新消息 " 中 "选择应用" 并 填写 " 通知标题 " 和 " 通知内容 " 等信息,单击下方的 " 发送通知 " 即可;
 
 

友盟(统计/反馈等)

 
作用: 应用统计及用户反馈等
 

应用统计

  1. 注册开发者账号,登录即可进入主页面:


  2. 单击左侧 " 下载SDK " 按需下载 , 并 " 添加新应用 " :
  3. 解压SDK,将libs目录下的文件合并到本地项目libs目录中;
  4. 添加权限:
    1. <uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>
    2. <uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/>
    3. <uses-permissionandroid:name="android.permission.INTERNET"/>
    4. <uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>


  5. 在Application标签内设置key值(Appkey可在统计后台的 统计分析->设置->应用信息 页面查看):
    1. <meta-dataandroid:value="YOUR_APP_KEY"android:name="UMENG_APPKEY"></meta-data>
    2. <meta-dataandroid:value="ChannelID"android:name="UMENG_CHANNEL"/>
    "Channel ID" 替换为应用的推广渠道名称,如"google play"

  6. 在每个Activity中集成如下代码,以便获取正确的新增用户、活跃用户、启动次数、使用时长等基本数据:
    1. publicvoidonResume(){
    2. super.onResume();
    3. MobclickAgent.onResume(this);
    4. }
    5. publicvoidonPause(){
    6. super.onPause();
    7. MobclickAgent.onPause(this);
    8. }
    注意:如果Activity之间有继承或者控制关系则不要同时在父和子Activity中重复添加onPause和onResume方法,否则会造成重复统计(eg.使用TabHost、TabActivity、ActivityGroup时)。

    当应用在后台运行超过30秒(默认)再回到前端,将被认为是两个独立的session(启动),例如用户回到home,或进入其他程序,经过一段时间后再返回之前的应用。可通过接口来自定义这个间隔(参数单位为毫秒):
    1. MobclickAgent.setSessionContinueMillis(longinterval)
    注意:对于包含fragment的Activity,若要获得更详细的信息,请参看官网文档说明;

  7. 设置发送策略:
    在程序入口Activity中集成代码:
    1. MobclickAgent.updateOnlineConfig(mContext);
  8. 配置结束,启动App,即可登陆umeng后台查看数据;
 

用户反馈

  1. 类似上面的操作,导入用户反馈的jar包,并将res目中layout/drawable/anim下的文件集成到本地项目中;
  2. 在项目manifest内声明相关Activity:
    1. <!--友盟"反馈意见"-->
    2. <activity
    3. android:name="com.umeng.fb.ConversationActivity"
    4. android:theme="@android:style/Theme.NoTitleBar"/>
    5. <activity
    6. android:name="com.umeng.fb.ContactActivity"
    7. android:theme="@android:style/Theme.NoTitleBar"/>
    配置appKey,若上面已设置过,则略过本步:
    1. <!--友盟统计-->
    2. <meta-data
    3. android:name="UMENG_APPKEY"
    4. android:value="yourappKey">
    5. </meta-data>
    6. <meta-data
    7. android:name="UMENG_CHANNEL"
    8. android:value="chanelid"/>
    添加权限:
    1. <uses-permissionandroid:name="android.permission.INTERNET"/>
    2. <uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
    3. <uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>
    4. <uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/>
    5. <uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
  3. 若开发者回复用户反馈后,需要提醒用户,则在程序入口Activity的onCreate()方法中设置:
    1. //友盟反馈意见
    2. FeedbackAgentagent=newFeedbackAgent(this);
    3. agent.sync();
  4. 按需设置页面跳转:
    1. startActivity(mContent,ConversationActivity.class));
  5. 完成用户反馈功能集合,若有需要可执行修改layout等文件;


百度地图

 

基础地图

  1. 准备动作都一样:注册开发者账号,登记应用,获取appID等信息;
    登录后,单击右上角的"API控制台==> 创建应用 " ,按需填入信息即可获得 " 访问应用(ak) ",就是后面需要用到的密匙key了;
    注意; 安全码由 " 数字签名 + 分号 + 包名 " 组成,其中数字签名在 Eclipse ==> window ==> preferences ==> Android ==> Build ==> SHA1 fingerprint;
  2. 下载所需的sdk;
  3. 合并libs目录:
    将armeabi目录下的libBaiduMapSDK_vx_x_x.so拷贝到本地项目同名文件夹内;
    将BaiduLBS_Android.jar拷贝到本地项目libs目录内;
  4. 配置Manifest:
    在application标签内添加密匙key:
    1. <meta-data
    2. android:name="com.baidu.lbsapi.API_KEY"
    3. android:value="yourkey"/>
    添加权限:
    1. <!--基础地图-->
    2. <uses-permissionandroid:name="android.permission.GET_ACCOUNTS"/>
    3. <uses-permissionandroid:name="android.permission.USE_CREDENTIALS"/>
    4. <uses-permissionandroid:name="android.permission.MANAGE_ACCOUNTS"/>
    5. <uses-permissionandroid:name="android.permission.AUTHENTICATE_ACCOUNTS"/>
    6. <uses-permissionandroid:name="com.android.launcher.permission.READ_SETTINGS"/>
    7. <uses-permissionandroid:name="android.permission.BROADCAST_STICKY"/>
    8. <uses-permissionandroid:name="android.permission.WRITE_SETTINGS"/>
    9. <!--基础地图与定位功能共有的权限-->
    10. <uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    11. <uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
    12. <uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/>
    13. <uses-permissionandroid:name="android.permission.CHANGE_WIFI_STATE"/>
    14. <uses-permissionandroid:name="android.permission.INTERNET"/>
    15. <uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>
  5. 在Activity的布局xml文件件中添加地图控件:
    1. <com.baidu.mapapi.map.MapView
    2. android:id="@+id/bmapView"
    3. android:layout_width="match_parent"
    4. android:layout_height="match_parent"
    5. android:clickable="true"/>
  6. 在程序中初始化百度地图SDK并管理其生命周期:
    1. publicclassMainActivityextendsActivity{
    2. MapViewmMapView=null;
    3. @Override
    4. protectedvoidonCreate(BundlesavedInstanceState){
    5. super.onCreate(savedInstanceState);
    6. //在使用SDK各组件之前初始化context信息,传入ApplicationContext
    7. //注意该方法要再setContentView方法之前实现
    8. SDKInitializer.initialize(getApplicationContext());
    9. setContentView(R.layout.activity_main);
    10. //获取地图控件引用
    11. mMapView=(MapView)findViewById(R.id.bmapView);
    12. }
    13. @Override
    14. protectedvoidonDestroy(){
    15. super.onDestroy();
    16. //在activity执行onDestroy时执行mMapView.onDestroy(),实现地图生命周期管理
    17. mMapView.onDestroy();
    18. }
    19. @Override
    20. protectedvoidonResume(){
    21. super.onResume();
    22. //在activity执行onResume时执行mMapView.onResume(),实现地图生命周期管理
    23. mMapView.onResume();
    24. }
    25. @Override
    26. protectedvoidonPause(){
    27. super.onPause();
    28. //在activity执行onPause时执行mMapView.onPause(),实现地图生命周期管理
    29. mMapView.onPause();
    30. }
    31. }

定位功能

 
  1. 下载SDK,解压后将libs下的BaiduLBS_Android.jar 、locSDK_3.1.jar及armeabi下的libBaiduMapSDK_v3_1_0.so、liblocSDK4d.so拷贝到项目中;
  2. 配置Manifest:
    设置密匙key:
    1. <meta-data
    2. android:name="com.baidu.lbsapi.API_KEY"
    3. android:value="yourkey"/>
    添加权限:
    1. <!--定位权限-->
    2. <!--这个权限用于进行网络定位-->
    3. <uses-permissionandroid:name="android.permission.ACCESS_COARSE_LOCATION"/>
    4. <!--这个权限用于访问GPS定位-->
    5. <uses-permissionandroid:name="android.permission.ACCESS_FINE_LOCATION"/>
    6. <!--SD卡读取权限,用户写入离线定位数据-->
    7. <uses-permissionandroid:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
    8. <!--允许应用读取低级别的系统日志文件-->
    9. <uses-permissionandroid:name="android.permission.READ_LOGS"/>
    10. <!--基础地图与定位功能共有的权限-->
    11. <!--写入扩展存储,向扩展卡写入数据,用于写入离线定位数据-->
    12. <uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    13. <!--用于读取手机当前的状态-->
    14. <uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
    15. <!--用于访问wifi网络信息,wifi信息会用于进行网络定位-->
    16. <uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/>
    17. <!--这个权限用于获取wifi的获取权限,wifi信息会用来进行网络定位-->
    18. <uses-permissionandroid:name="android.permission.CHANGE_WIFI_STATE"/>
    19. <!--访问网络,网络定位需要上网-->
    20. <uses-permissionandroid:name="android.permission.INTERNET"/>
    21. <!--获取运营商信息,用于支持提供运营商信息相关的接口-->
    22. <uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>
    添加服务:
    1. <!--定位-->
    2. <service
    3. android:name="com.baidu.location.f"
    4. android:enabled="true"
    5. android:process=":remote"/>
  3. 同地图基础功能中第5/6条 : 添加地图控件及生命周期管理;
  4. 在onCreate()方法中初始化定位功能并运行:
    1. super.onCreate(savedInstanceState);
    2. SDKInitializer.initialize(getApplicationContext());
    3. setContentView(R.layout.activity_main);
    4. //地图初始化
    5. mMapView=(MapView)findViewById(R.id.bmapView);
    6. mBaiduMap=mMapView.getMap();
    7. //定位
    8. mCurrentMode=LocationMode.NORMAL;
    9. mBaiduMap.setMyLocationConfigeration(newMyLocationConfiguration(
    10. mCurrentMode,true,mCurrentMarker));
    11. //地图初始化显示精度
    12. MapStatusmMapStatus=newMapStatus.Builder().zoom(14).build();
    13. MapStatusUpdatemMapStatusUpdate=MapStatusUpdateFactory
    14. .newMapStatus(mMapStatus);
    15. mBaiduMap.setMapStatus(mMapStatusUpdate);
    16. //开启定位图层
    17. mBaiduMap.setMyLocationEnabled(true);
    18. //定位初始化
    19. mLocClient=newLocationClient(this);
    20. mLocClient.registerLocationListener(myListener);//myListener为自定义监听函数,见下一步
    21. LocationClientOptionoption=newLocationClientOption();
    22. option.setOpenGps(true);//打开gps
    23. option.setCoorType("bd09ll");//设置坐标类型
    24. option.setScanSpan(1000);
    25. mLocClient.setLocOption(option);
    26. //別忘了运行
    27. mLocClient.start();
    其中" mMapStatus = new MapStatus.Builder().zoom(14).build();"用于设定地图初始化精度范围:
    1. //百度地图初始化精度
    2. intBAIDU_MAP_5KM=12;
    3. intBAIDU_MAP_2KM=13;
    4. intBAIDU_MAP_1KM=14;
    5. intBAIDU_MAP_500M=15;
    6. intBAIDU_MAP_200M=16;
    7. intBAIDU_MAP_100M=17;
    8. intBAIDU_MAP_50M=18;
  5. 设置定位SDK监听函数:
    1. publicclassMyLocationListennerimplementsBDLocationListener{
    2. @Override
    3. publicvoidonReceiveLocation(BDLocationlocation){
    4. //mapview销毁后不在处理新接收的位置
    5. if(location==null||mMapView==null)
    6. return;
    7. floatradius=location.getRadius();
    8. MyLocationDatalocData=newMyLocationData.Builder()
    9. .accuracy(radius)
    10. //此处设置开发者获取到的方向信息,顺时针0-360
    11. .direction(100).latitude(location.getLatitude())
    12. .longitude(location.getLongitude()).build();
    13. mBaiduMap.setMyLocationData(locData);
    14. if(isFirstLoc){
    15. isFirstLoc=false;
    16. LatLngll=newLatLng(location.getLatitude(),
    17. location.getLongitude());
    18. MapStatusUpdateu=MapStatusUpdateFactory.newLatLng(ll);
    19. mBaiduMap.animateMapStatus(u);
    20. }
    21. <spanstyle="white-space:pre"></span>//添加悬浮物
    22. initOverlay(location);
    23. }
    24. publicvoidonReceivePoi(BDLocationpoiLocation){
    25. }
    26. }
  6. 添加悬浮物函数:
    1. //设置悬浮物
    2. privatebooleanisShowInfoWindow;
    3. privateInfoWindowmInfoWindow;
    4. publicvoidinitOverlay(BDLocationlocation){
    5. //定义Maker坐标点
    6. LatLngpoint=newLatLng(location.getLatitude()+0.01,
    7. location.getLongitude()+0.01);
    8. //构建Marker图标
    9. BitmapDescriptorbitmap=BitmapDescriptorFactory
    10. .fromResource(R.drawable.icon_tab_near_pressed);
    11. //构建MarkerOption,用于在地图上添加Marker
    12. OverlayOptionsoption=newMarkerOptions().position(point)
    13. .icon(bitmap);
    14. markerA=(Marker)mBaiduMap.addOverlay(option);
    15. //Marker点击事件
    16. mBaiduMap.setOnMarkerClickListener(newOnMarkerClickListener(){
    17. @Override
    18. publicbooleanonMarkerClick(Markerarg0){
    19. if(isShowInfoWindow){
    20. mBaiduMap.hideInfoWindow();
    21. isShowInfoWindow=false;
    22. }else{
    23. ViewoverlayButton=getLayoutInflater().inflate(
    24. R.layout.overlay,null);
    25. finalLatLngll=markerA.getPosition();
    26. /*
    27. *getProjection()获取地图投影坐标转换器,当地图初始化完成之前返回null,在
    28. *OnMapLoadedCallback.onMapLoaded()之后才能正常;
    29. *Projection接口用于屏幕像素点坐标系统和地球表面经纬度点坐标系统之间的变换
    30. */
    31. /**
    32. *publicPointtoScreenLocation(LatLnglocation)
    33. *将地理坐标转换成屏幕坐标参数:location-地理坐标如果传入null则返回null返回:
    34. *屏幕坐标
    35. */
    36. Pointp=mBaiduMap.getProjection().toScreenLocation(ll);
    37. p.y-=40;
    38. LatLngllInfo=mBaiduMap.getProjection()
    39. .fromScreenLocation(p);
    40. OnInfoWindowClickListenerlistener=newOnInfoWindowClickListener(){
    41. @Override
    42. publicvoidonInfoWindowClick(){
    43. Toast.makeText(MainActivity.this,"悬浮物点击事件",
    44. Toast.LENGTH_SHORT).show();
    45. }
    46. };
    47. //InfoWindow在地图中显示一个信息窗口,可以设置一个View作为该窗口的内容,也可以设置一个
    48. //BitmapDescriptor作为该窗口的内容。
    49. mInfoWindow=newInfoWindow(overlayButton,llInfo,
    50. listener);
    51. mBaiduMap.showInfoWindow(mInfoWindow);
    52. isShowInfoWindow=true;
    53. }
    54. returnfalse;
    55. }
    56. });
    57. }
  7. 效果如下:

    Demo源文件下载地址;

  8. 如果只是单纯想得到经纬度,则不必添加组件,前两步还是一样:
    1. //定位
    2. LocationClientmLocClient;
    3. publicMyLocationListennermyListener=newMyLocationListenner();
    4. privateLocationModemCurrentMode;
    5. BitmapDescriptormCurrentMarker;
    6. booleanisFirstLoc=true;//是否首次定位
    7. privateStringtvCityLatLng;
    8. privatevoidinitLocation(){
    9. //定位初始化
    10. mCurrentMode=LocationMode.NORMAL;
    11. mLocClient=newLocationClient(this);
    12. mLocClient.registerLocationListener(myListener);
    13. LocationClientOptionoption=newLocationClientOption();
    14. option.setOpenGps(true);//打开gps
    15. option.setCoorType("bd09ll");//设置坐标类型
    16. option.setScanSpan(1000);
    17. mLocClient.setLocOption(option);
    18. mLocClient.start();
    19. }
  9. 设置监听:
    1. publicclassMyLocationListennerimplementsBDLocationListener{
    2. @Override
    3. publicvoidonReceiveLocation(BDLocationlocation){
    4. if(location==null){
    5. return;
    6. }
    7. if(isFirstLoc){
    8. isFirstLoc=false;
    9. LatLngll=newLatLng(location.getLatitude(),
    10. location.getLongitude());
    11. <spanstyle="white-space:pre"></span>//这里我写成http网址形式,是之前用于发短信的,可以直接通过连接打开谷歌地图进行定位
    12. tvCityLatLng="http://ditu.google.cn/?q="
    13. +location.getLatitude()+","
    14. +location.getLongitude();
    15. System.out.println("首次定位坐标:"+tvCityLatLng);
    16. }
    17. }
    18. publicvoidonReceivePoi(BDLocationpoiLocation){
    19. }
    20. }
  10. 生命周期管理:
    1. @Override
    2. protectedvoidonDestroy(){
    3. super.onDestroy();
    4. //退出时销毁定位
    5. mLocClient.stop();
    6. }
    备注:若在程序运行期间需要多次用到定位,则在监听事件MyLocationListenner()内if条件语句中添加标志位进行判断即可;

引用:http://blog.csdn.net/zxz_tsgx/article/details/38503917

推荐阅读:Eclipse软件问题-方案积累

分享到:
评论

相关推荐

    开放最短路径优先(OSPF)

    OSPF的LSA中包含连接的接口、使用的metric及其它的变量信息。OSPF路由器积累链接状态信息,并使用SPF算法来计算到各节点的最短路径。 作为链接状态路由协议,OSPF与RIP和IGRP这些距离向量路由协议是不同的。使用...

    CLR.via.C#.(中文第3版)(自制详细书签)Part2

    · 使用泛型和接口来定义可重用的算法 · 高效使用特定的CLR类型——委托、枚举、定制attribute、数组和字符串 · 理解垃圾回收器是如何管理内存资源的 · 使用线程池、任务、取消、计时器和异步I/O操作来设计响应性...

    FTKernelAPI BT协议内核库及示例源码

    为了便于大家使用, 作者提供了一个使用FTKernelAPI 开发的开放源码的BT下载程序 - BitZam. 关于使用FTKernelAPI, 你可以下载BitZam的C++源码看看. 使用起来非常简单. 你可以在BitZam的基础上在很短的时间内开发出...

    持续看好AIGC应用与数据环节,关注传媒国企价值重估可能

    ChatGPT 开放 API 接口、百度文心一言即将上线,AIGC 即将迎来应用爆发期。 1)算力、算法与数据是 AI 落地的三驾马车,从进展来看,预训练的大模型 逐步走向成熟,从文本生成到绘画、语音乃至多模态大模型不断丰富...

    完结15章系统玩转OpenGL+AI,实现各种酷炫视频特效

    OpenGL的相关知识,通过本文章,我将带着大家从0到1手把手实现特效美颜相机,让大家系统性掌握OpenGL 核心技术,从而轻松实现各种酷炫的视频特效、吃透视频特效原理,并积累大量图形学/数学知识,助力大家快速成为...

    腾讯区块链方案白皮书

    在“自主创新、安全高效、开放共享”设计原则的指导下,腾讯可信区块链方案的整体架构分成三个层次:腾讯区块链的底层是腾讯自主研发的Trust SQl平台,Trust SQL通过SQL和API的接口为上层应用场景提供区块链基础服务...

    CLR.via.C#.(中文第3版)(自制详细书签)Part1

    · 使用泛型和接口来定义可重用的算法 · 高效使用特定的CLR类型——委托、枚举、定制attribute、数组和字符串 · 理解垃圾回收器是如何管理内存资源的 · 使用线程池、任务、取消、计时器和异步I/O操作来设计响应性...

    CLR.via.C#.(中文第3版)(自制详细书签)

    · 使用泛型和接口来定义可重用的算法 · 高效使用特定的CLR类型——委托、枚举、定制attribute、数组和字符串 · 理解垃圾回收器是如何管理内存资源的 · 使用线程池、任务、取消、计时器和异步I/O操作来设计...

    圣者文章管理系统SWCms 3.0.2.rar

    2年来,凭借 SWCms 团队长期积累的丰富的Web开发及数据库经验和勇于创新追求完美的设计理念,使得 SWCcms 得到了很多大中小型网站站长的认可,并且越来越多地被应用到大中型商业网站。 圣者文章管理系统SWCms 主要...

    CLR.via.C#.(中文第3版)(自制详细书签)Part3

    · 使用泛型和接口来定义可重用的算法 · 高效使用特定的CLR类型——委托、枚举、定制attribute、数组和字符串 · 理解垃圾回收器是如何管理内存资源的 · 使用线程池、任务、取消、计时器和异步I/O操作来设计响应性...

    WEFAFA介绍

    wefafa同时是一个开放的平台,通过其开放接口、标准组件及帮助文档和示例,客户自身或第三方合作伙伴可以方便的把各种基于Web的应用统一到Wefafa平台上,不仅可以在保护企业原有IT投资的基础上实现各种分散的应用在...

    旅游大数据包含实时旅游大数据平台服务、旅游大数据分析报.pdf

    业务描述 基于电信所拥有数据优势和项目积累,开发出旅游大数据 API 接口标准 化产品可以开放给全省、地市、区县的开发人员,以数据接口形式输出实时 统计数据。 2.业务功能 旅游大数据 API 接口标准化产品分为实时...

    通用嵌入式系统自动化测试平台.docx

    具有高度开放的协议模板管理接口,通过不断在测试中积累各领域的应用层协议,实现针对不同领域嵌入式系统自动化测试解决方案的快速构建; 提供丰富的测试监控仪表和高度灵活的协议字段绑定方法,支持收发数据...

    方正方案——方正医疗事业部

    ◆开放的体系结构:新一代的CHIS V6.0采用了国际流行的标准并提供了丰富的接口函数,极大的方便了与外部系统的连接。 ◆极高的数据安全性,一是在医院内部,对数据采取了多重安全保护措施;二是在与外部系统交换信息...

    测试平台技术体制统一与测试工装自主开发能力提升的需求

    具有开放的协议模板管理接口,通过不断在测试中积累各领域的应用层协议,可实现针对不同领域嵌入式系统自动化测试解决方案的快速构建; 支持实时图形化监控窗体,包括控制类、表格类以及显示图形;可通过枚举、虚拟...

    ASP+SQL美食网站设计(源代码+参考文献).zip

    “食全食美”预定系统是典型的电子商务销售平台, 其开发基于B/S模式的...以统一的服务接口规范为核心,使用开放标准。从功能上来说,系统是比较完备的,系统以Web界面与用户交互,为用户提供信息并接受其操作,同时通过

    常用嵌入式系统软件仿真自动化黑盒测试平台.docx

    通用嵌入式系统测试平台(Embedded System Interface Test Studio,简称:... 具有高度开放的协议模板管理接口,通过不断在测试中积累各领域的应用层协议,实现针对不同领域嵌入式系统自动化测试解决方案的快速构建;

    通用嵌入式系统测试平台(Embedded System Interface Test Studio

    通用嵌入式系统测试平台(Embedded System Interface Test Studio,简称:... 具有高度开放的协议模板管理接口,通过不断在测试中积累各领域的应用层协议,实现针对不同领域嵌入式系统自动化测试解决方案的快速构建;

    美食网站设计-asp.net

    “食全食美”预定系统是典型的电子商务销售平台, 其开发基于B/S模式的...以统一的服务接口规范为核心,使用开放标准。从功能上来说,系统是比较完备的,系统以Web界面与用户交互,为用户提供信息并接受其操作,同时通

    淘掌门 免费淘宝客程序 v3.12

    经过一段时间的积累,已经有了许多成熟的模板可供使用,用户可以随心所欲选择自己喜欢的模板,让你的淘宝客程序不再显得千篇一律。 淘掌门V3.12更新列表1.功能强化:后台工具增加商品屏蔽功能,用户可以通过这个...

Global site tag (gtag.js) - Google Analytics