Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import 'package:flutter/material.dart';
- import 'package:http/http.dart' as http;
- import 'dart:convert';
- import 'package:messenger/HomePage.dart';
- import 'package:shared_preferences/shared_preferences.dart';
- import 'HomeScreen.dart';
- Future<void> main() async {
- runApp(MyApp());
- }
- class MyApp extends StatelessWidget {
- @override
- Widget build(BuildContext context) {
- return MaterialApp(
- title: 'Flutter Demo',
- theme: ThemeData(
- primarySwatch: Colors.red,
- ),
- home: Messenger(),
- );
- }
- }
- class Messenger extends StatefulWidget {
- @override
- _MessengerState createState() => _MessengerState();
- }
- class _MessengerState extends State<Messenger> {
- bool isLoggedIn;
- Future<void> checkLogin(BuildContext context) async{
- print('Initializing database');
- SharedPreferences prefs = await SharedPreferences.getInstance();
- isLoggedIn = prefs.getBool('isLoggedIn')??false;
- if(isLoggedIn){
- var _router = new MaterialPageRoute(
- builder: (BuildContext context) => new HomeScreen());
- Navigator.of(context).push(_router);
- }else{
- var _router = new MaterialPageRoute(
- builder: (BuildContext context) => new HomePage());
- Navigator.of(context).push(_router);
- }
- }
- @override
- void initState() {
- // TODO: implement initState
- // super.initState();
- print('Into the initstate');
- checkLogin(context);
- }
- TextEditingController _phoneNumberController = new TextEditingController();
- Future _sendMessage() async{
- print('${_phoneNumberController.text}');
- var cred =
- '****';
- var bytes = utf8.encode(cred);
- var base64Str = base64.encode(bytes);
- var url =
- 'https://api.twilio.com/2010-04-01/Accounts/****/Messages.json';
- var response = await http.post(url, headers: {
- 'Authorization': 'Basic ${base64Str}'
- }, body: {
- 'From': '+**', //twilio number
- 'To': '+91${_phoneNumberController.text}',
- 'Body': 'This is a test message VOILA!!'
- });
- print('Response status: ${response.statusCode}');
- print('Response body: ${response.body}');
- }
- @override
- Widget build(BuildContext context) {
- return Scaffold(
- appBar: AppBar(title: Text("Messenger"),),
- body: Center(
- child: Column(
- mainAxisAlignment: MainAxisAlignment.center,
- children: <Widget>[
- Container(
- margin: EdgeInsets.all(10),
- child: TextFormField(
- controller: _phoneNumberController,
- keyboardType: TextInputType.number,
- ),
- ),
- Container(
- margin: EdgeInsets.all(10),
- child: RaisedButton(
- child: Text("Submit"),
- onPressed: _sendMessage,
- ),
- )
- ],
- ),
- ),
- );
- }
- }
Add Comment
Please, Sign In to add comment