本帖最后由 Genius 于 2016-7-7 16:19 编辑  
 
2.        SDK流程简介2.1.        通用流程图2.2.        关键点说明SDK已经封装了所有的用户、配置、发现、连接、控制的过程,开发者使用这些API可以完成上述流程中的功能开发,不需要再自行实现通讯协议。 SDK采取回调的工作方式,所以必须设置必要的监听,比如通用监听和设备监听,具体请参见流程详解。SDK在主线程中给APP回调。 SDK支持APP在Activity之间以及在Activity和Service之间传递对象。  
 
 
  
 1、如果是在activity之间传递对象的话可以用intent来传递 
 (传递) 
  | Intent intent = new Intent(Context, A.class);  
Bundle bundle = new Bundle();  
bundle.putParcelable(“参数名”, 设备类对象);  
intent.putExtras(bundle);  
startActivity(intent);  
 
 |  
 (接收)  | Intent intent = getIntent();  
intent.getParcelableExtra("参数名");  
 
 |  
  
 2、在activity和service之间传递对象可以通过广播来传递数据,由一方发送数据另一方接收。 
 
 (注册广播)  | IntentFilter filter = new IntentFilter();//创建IntentFilter对象  
//注册一个广播,用于接收Activity传送过来的命令,控制Service的行为,如:发送数据,停止服务等  
filter.addAction("AAAAAAA");  
//注册Broadcast Receiver  
registerReceiver(cmdReceiver, filter);  s  
 
 |  
 (发送广播)  | Intent intent = new Intent();    
intent.setAction("AAAAAAA");    
Bundle bundle = new Bundle();     
bundle.putParcelable(“参数名”,  设备类对象);  
intent.putExtras(bundle);  
sendOrderedBroadcast(intent, null);  
 
 |  
  
 3、另外一种,是在Activity中通过bindService获取到Service对象,直接调用Service方法获取想要的设备对象 
  2.3.        混淆打包配置如果您的项目使用了Proguard混淆打包,为了避免SDK被二次混淆导致无法正常使用SDK,请务必在 proguard-project.txt中添加以下代码:  | -libraryjars libs/GizWifiSDK.jar   
-dontwarn com.gizwits.**  
-keep class com.gizwits.**{   
    *;  
}  
 
 |  
 并在project.properties中指向Android混淆文件: proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt  
 |