diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index f88acae04..abf27576f 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -27,8 +27,6 @@ <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> - <data android:scheme="cakewallet"/> - <data android:host="wyre-trade-success"/> </intent-filter> </activity> diff --git a/android/app/src/main/java/com/cakewallet/cake_wallet/MainActivity.java b/android/app/src/main/java/com/cakewallet/cake_wallet/MainActivity.java index ff3d5b8ae..c71968173 100644 --- a/android/app/src/main/java/com/cakewallet/cake_wallet/MainActivity.java +++ b/android/app/src/main/java/com/cakewallet/cake_wallet/MainActivity.java @@ -1,46 +1,15 @@ package com.cakewallet.cake_wallet; -import android.content.Intent; -import android.os.Bundle; -import android.os.Handler; -import android.os.Looper; - import androidx.annotation.NonNull; -import androidx.annotation.Nullable; - -import java.nio.ByteBuffer; import io.flutter.embedding.android.FlutterFragmentActivity; import io.flutter.embedding.engine.FlutterEngine; -import io.flutter.plugin.common.BasicMessageChannel; -import io.flutter.plugin.common.BinaryCodec; import io.flutter.plugins.GeneratedPluginRegistrant; public class MainActivity extends FlutterFragmentActivity { - public static final int DATA_EXISTS = 1; - public static final int DATA_NOT_EXISTS = 0; - BasicMessageChannel<ByteBuffer> dataChannel; - Handler handler = new Handler(Looper.getMainLooper()); - @Override public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) { GeneratedPluginRegistrant.registerWith(flutterEngine); - - dataChannel = new BasicMessageChannel<ByteBuffer>( - flutterEngine.getDartExecutor().getBinaryMessenger(), - "data_change", BinaryCodec.INSTANCE); - } - - @Override - protected void onActivityResult(int requestCode, int resultCode, Intent data) { - super.onActivityResult(requestCode, resultCode, data); - ByteBuffer buffer = ByteBuffer.allocateDirect(4); - if (data != null) { - buffer.putInt(DATA_EXISTS); - } else { - buffer.putInt(DATA_NOT_EXISTS); - } - handler.post(() -> dataChannel.send(buffer)); } } \ No newline at end of file diff --git a/lib/di.dart b/lib/di.dart index db0b70283..f17dd736c 100644 --- a/lib/di.dart +++ b/lib/di.dart @@ -7,6 +7,7 @@ import 'package:cake_wallet/entities/load_current_wallet.dart'; import 'package:cake_wallet/entities/order.dart'; import 'package:cake_wallet/entities/transaction_description.dart'; import 'package:cake_wallet/entities/transaction_info.dart'; +import 'package:cake_wallet/entities/wyre_service.dart'; import 'package:cake_wallet/monero/monero_wallet_service.dart'; import 'package:cake_wallet/entities/contact.dart'; import 'package:cake_wallet/entities/node.dart'; @@ -525,10 +526,16 @@ Future setup( getIt.registerFactoryParam<TradeDetailsPage, Trade, void>((Trade trade, _) => TradeDetailsPage(getIt.get<TradeDetailsViewModel>(param1: trade))); + getIt.registerFactory(() { + final wallet = getIt.get<AppStore>().wallet; + return WyreService(walletType: wallet.type, walletAddress: wallet.address); + }); + getIt.registerFactory(() { final wallet = getIt.get<AppStore>().wallet; return WyreViewModel(ordersSource, getIt.get<OrdersStore>(), - walletId: wallet.id, address: wallet.address, type: wallet.type); + walletId: wallet.id, address: wallet.address, type: wallet.type, + wyreService: getIt.get<WyreService>()); }); getIt.registerFactoryParam<WyrePage, String, void>((String url, _) => diff --git a/lib/entities/wyre_exception.dart b/lib/entities/wyre_exception.dart new file mode 100644 index 000000000..85d9f5b60 --- /dev/null +++ b/lib/entities/wyre_exception.dart @@ -0,0 +1,8 @@ +class WyreException implements Exception { + WyreException(this.description); + + String description; + + @override + String toString() => description; +} \ No newline at end of file diff --git a/lib/entities/wyre_service.dart b/lib/entities/wyre_service.dart index eb160af50..1007e5a71 100644 --- a/lib/entities/wyre_service.dart +++ b/lib/entities/wyre_service.dart @@ -1,4 +1,5 @@ import 'dart:convert'; +import 'package:cake_wallet/entities/wyre_exception.dart'; import 'package:cake_wallet/exchange/trade_state.dart'; import 'package:flutter/foundation.dart'; import 'package:http/http.dart'; @@ -12,13 +13,17 @@ class WyreService { @required this.walletAddress, this.isTestEnvironment = false}) { baseApiUrl = isTestEnvironment - ? 'https://api.testwyre.com' - : 'https://api.sendwyre.com'; + ? _baseTestApiUrl + : _baseProductApiUrl; trackUrl = isTestEnvironment - ? 'https://dash.testwyre.com/track/' - : 'https://dash.sendwyre.com/track/'; + ? _trackTestUrl + : _trackProductUrl; } + static const _baseTestApiUrl = 'https://api.testwyre.com'; + static const _baseProductApiUrl = 'https://api.sendwyre.com'; + static const _trackTestUrl = 'https://dash.testwyre.com/track/'; + static const _trackProductUrl = 'https://dash.sendwyre.com/track/'; static const _ordersSuffix = '/v3/orders'; static const _reserveSuffix = '/reserve'; static const _timeStampSuffix = '?timestamp='; @@ -103,13 +108,4 @@ class WyreService { amount: amount.toString() ); } -} - -class WyreException implements Exception { - WyreException(this.description); - - String description; - - @override - String toString() => description; } \ No newline at end of file diff --git a/lib/view_model/wyre_view_model.dart b/lib/view_model/wyre_view_model.dart index 7862557be..de0bb5065 100644 --- a/lib/view_model/wyre_view_model.dart +++ b/lib/view_model/wyre_view_model.dart @@ -12,8 +12,8 @@ class WyreViewModel = WyreViewModelBase with _$WyreViewModel; abstract class WyreViewModelBase with Store { WyreViewModelBase(this.ordersSource, this.ordersStore, - {@required this.walletId, @required this.address, @required this.type}) - : wyreService = WyreService(walletType: type, walletAddress: address); + {@required this.walletId, @required this.address, @required this.type, + @required this.wyreService}); Future<String> get wyreUrl => wyreService.getWyreUrl(); @@ -26,7 +26,7 @@ abstract class WyreViewModelBase with Store { final WalletType type; final String address; - WyreService wyreService; + final WyreService wyreService; Future<void> saveOrder(String orderId) async { try { @@ -39,6 +39,4 @@ abstract class WyreViewModelBase with Store { print(e.toString()); } } - - -} +} \ No newline at end of file