Android Open Source - lifx-sdk-android L F X S D K Samples Activity






From Project

Back to project page lifx-sdk-android.

License

The source code is released under:

MIT License

If you think the Android project lifx-sdk-android listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

//
//  LFXSDKSamplesActivity.java
//  LIFX//  w  w w  .  ja  v a 2s .  c om
//
//  Created by Jarrod Boyes on 24/03/14.
//  Copyright (c) 2014 LIFX Labs. All rights reserved.
//

package com.example.lifx_sdk_samples;

import lifx.java.android.client.LFXClient;
import lifx.java.android.network_context.LFXNetworkContext;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.net.wifi.WifiManager;
import android.net.wifi.WifiManager.MulticastLock;
import android.os.Bundle;
import android.view.View;

public class LFXSDKSamplesActivity extends Activity
{
  private boolean shouldStopLifxOnPause;
  private LFXNetworkContext networkContext;
  private MulticastLock ml = null;
  
  @Override
  protected void onCreate( Bundle savedInstanceState)
  {
    super.onCreate( savedInstanceState);
    
    setContentView( R.layout.lifx_main_activity_layout);
    
    // A Multicast lock should be acquired, as some phones disable UDP broadcast / recieve
    WifiManager wifi;
        wifi = (WifiManager) getSystemService( Context.WIFI_SERVICE);
        ml = wifi.createMulticastLock( "lifx_samples_tag");
        ml.acquire();
    
    networkContext = LFXClient.getSharedInstance( getApplicationContext()).getLocalNetworkContext();
    networkContext.connect();
  }
  
  @Override
  protected void onResume()
  {
    super.onResume();
    
    shouldStopLifxOnPause = true;
  }
  
  public void pressedLabelChange( View v)
  {
    Intent intent = new Intent( getApplicationContext(), LFXSDKLightEditLabelActivity.class);
    shouldStopLifxOnPause = false;
    startActivity( intent);
  }
  
  public void pressedRandomColor( View v)
  {
    Intent intent = new Intent( getApplicationContext(), LFXSDKLightRandomColorActivity.class);
    shouldStopLifxOnPause = false;
    startActivity( intent);
  }
  
  public void pressedPowerChange( View v)
  {
    Intent intent = new Intent( getApplicationContext(), LFXSDKLightPowerActivity.class);
    shouldStopLifxOnPause = false;
    startActivity( intent);
  }
  
  @Override
  protected void onPause()
  {
    super.onPause();
    
    if( shouldStopLifxOnPause)
    {
      System.out.println( "Stop LIFX");
      networkContext.disconnect();
      
      if( ml != null)
      {
        ml.release();
      }
    }
    else
    {
      System.out.println( "Don't Stop LIFX");
    }
  }
}




Java Source Code List

com.example.lifx_sdk_samples.LFXSDKLightEditLabelActivity.java
com.example.lifx_sdk_samples.LFXSDKLightListAdapter.java
com.example.lifx_sdk_samples.LFXSDKLightPowerActivity.java
com.example.lifx_sdk_samples.LFXSDKLightRandomColorActivity.java
com.example.lifx_sdk_samples.LFXSDKSamplesActivity.java
com.example.lifx_sdk_samples.LFXSDKTaggedLightCollectionListAdapter.java
lifx.java.android.client.LFXClient.java
lifx.java.android.constant.LFXSDKConstants.java
lifx.java.android.entities.LFXHSBKColor.java
lifx.java.android.entities.LFXLightTarget.java
lifx.java.android.entities.LFXTypes.java
lifx.java.android.entities.internal.LFXBinaryPath.java
lifx.java.android.entities.internal.LFXBinaryTargetID.java
lifx.java.android.entities.internal.LFXBinaryTypes.java
lifx.java.android.entities.internal.LFXDeviceMapping.java
lifx.java.android.entities.internal.LFXGatewayDescriptor.java
lifx.java.android.entities.internal.LFXMessageObservationDescriptor.java
lifx.java.android.entities.internal.LFXMessage.java
lifx.java.android.entities.internal.LFXSiteID.java
lifx.java.android.entities.internal.LFXTagMapping.java
lifx.java.android.entities.internal.LFXTarget.java
lifx.java.android.entities.internal.structle.LxProtocolDevice.java
lifx.java.android.entities.internal.structle.LxProtocolLight.java
lifx.java.android.entities.internal.structle.LxProtocolSensor.java
lifx.java.android.entities.internal.structle.LxProtocolWan.java
lifx.java.android.entities.internal.structle.LxProtocolWifi.java
lifx.java.android.entities.internal.structle.LxProtocol.java
lifx.java.android.entities.internal.structle.Lx.java
lifx.java.android.entities.internal.structle.StructleTypes.java
lifx.java.android.internal.LFXWiFiObserver.java
lifx.java.android.light.LFXLightCollection.java
lifx.java.android.light.LFXLight.java
lifx.java.android.light.LFXTaggedLightCollection.java
lifx.java.android.light.internal.LFXAllLightsCollection.java
lifx.java.android.network_context.LFXNetworkContext.java
lifx.java.android.network_context.internal.routing_table.LFXRoutingTable.java
lifx.java.android.network_context.internal.transport_manager.LFXTransportManager.java
lifx.java.android.network_context.internal.transport_manager.gateway_connection.LFXGatewayConnection.java
lifx.java.android.network_context.internal.transport_manager.gateway_connection.LFXSocketGeneric.java
lifx.java.android.network_context.internal.transport_manager.gateway_connection.LFXSocketTCP.java
lifx.java.android.network_context.internal.transport_manager.gateway_connection.LFXSocketUDP.java
lifx.java.android.network_context.internal.transport_manager.gateway_connection.LFXTCPGatewayConnection.java
lifx.java.android.network_context.internal.transport_manager.gateway_connection.LFXUDPGatewayConnection.java
lifx.java.android.network_context.internal.transport_manager.lan.LFXLANTransportManager.java
lifx.java.android.network_context.internal.transport_manager.lan.gateway_discovery.LFXGatewayDiscoveryController.java
lifx.java.android.network_context.internal.transport_manager.lan.gateway_discovery.LFXGatewayDiscoveryTableEntry.java
lifx.java.android.util.LFXByteUtils.java
lifx.java.android.util.LFXLog.java
lifx.java.android.util.LFXNetworkUtils.java
lifx.java.android.util.LFXTimerUtils.java