Skip to content

Instantly share code, notes, and snippets.

View ricardoogliari's full-sized avatar

Ricardo da Silva Ogliari ricardoogliari

View GitHub Profile
@ricardoogliari
ricardoogliari / _MyHomePageState.dart
Created July 7, 2019 03:36
_MyHomePageState.dart
import ...
import 'package:flutter_mqtt/thermometer_widget.dart';
...
class _MyHomePageState extends State<MyHomePage> {
...
@override
Widget build(BuildContext context) {
void _onMessage(List<mqtt.MqttReceivedMessage> event) {
final mqtt.MqttPublishMessage recMess =
event[0].payload as mqtt.MqttPublishMessage;
final String message =
mqtt.MqttPublishPayload.bytesToStringAsString(recMess.payload.message);
setState(() {
_temp = double.parse(message);
});
}
@ricardoogliari
ricardoogliari / subscribeToTopic.dart
Created July 7, 2019 03:32
subscribeToTopic.dart
void _subscribeToTopic(String topic) {
if (connectionState == mqtt.MqttConnectionState.connected) {
client.subscribe(topic, mqtt.MqttQos.exactlyOnce);
}
}
void _connect() async {
client = mqtt.MqttClient(broker, '');
client.port = port;
client.logging(on: true);
client.keepAlivePeriod = 30;
client.onDisconnected = _onDisconnected;
final mqtt.MqttConnectMessage connMess = mqtt.MqttConnectMessage()
.withClientIdentifier(clientIdentifier)
.startClean() // Non persistent session for testing
String broker = abc.cloudmqtt.com';
int port = 13372;
String username = 'seu_username';
String passwd = 'seu_password';
String clientIdentifier = 'android';
double _temp = 20;
mqtt.MqttClient client;
mqtt.MqttConnectionState connectionState;
import 'package:flutter/material.dart';
import 'dart:async';
import 'package:mqtt_client/mqtt_client.dart' as mqtt;
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
dependencies:
flutter:
sdk: flutter
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2
mqtt_client: ^5.5.3
dependencies:
flutter:
sdk: flutter
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2
mqtt_client: ^5.5.3
import 'package:flutter/services.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart';
import 'package:firebase_auth/firebase_auth.dart';
import 'package:flutter/material.dart';
import 'dart:async';
import 'HomeScreenPage.dart';
import 'package:location/location.dart' as LocationMgr;
class HomeScreenState extends State<HomeScreenPage> {
static const platformChannelGeolocator = const MethodChannel('geolocator');
class MainActivity: FlutterActivity() {
private val CHANNEL_GEOLOCATOR = "geolocator"
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
GeneratedPluginRegistrant.registerWith(this)
MethodChannel(flutterView, CHANNEL_GEOLOCATOR).setMethodCallHandler(
object : MethodCallHandler {