mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2025-01-22 02:34:59 +00:00
Use dylib as iOS framework. Use custom path for loading of iOS framework for monero.dart. Add script for generate iOS framework for monero wallet.
This commit is contained in:
parent
1599626f6b
commit
9169551a95
6 changed files with 31 additions and 8 deletions
4
.gitignore
vendored
4
.gitignore
vendored
|
@ -168,4 +168,6 @@ macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png
|
|||
macos/Runner/Configs/AppInfo.xcconfig
|
||||
|
||||
# Monero.dart (Monero_C)
|
||||
scripts/monero_c
|
||||
scripts/monero_c
|
||||
# iOS generated framework bin
|
||||
ios/MoneroWallet.framework/MoneroWallet
|
BIN
ios/MoneroWallet.framework/Info.plist
Normal file
BIN
ios/MoneroWallet.framework/Info.plist
Normal file
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
|
||||
/* Begin PBXBuildFile section */
|
||||
0C44A71A2518EF8000B570ED /* decrypt.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C44A7192518EF8000B570ED /* decrypt.swift */; };
|
||||
0C50DFB92BF3CB56002B0EB3 /* MoneroWallet.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 0C50DFB82BF3CB56002B0EB3 /* MoneroWallet.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
|
||||
0C9D68C9264854B60011B691 /* secRandom.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C9D68C8264854B60011B691 /* secRandom.swift */; };
|
||||
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
|
||||
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
|
||||
|
@ -17,7 +18,6 @@
|
|||
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
|
||||
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; };
|
||||
9F46EE5E2BC11178009318F5 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = 9F46EE5D2BC11178009318F5 /* PrivacyInfo.xcprivacy */; };
|
||||
CE5E8A262BEE1A2500608EA1 /* monero_libwallet2_api_c.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = CE5E8A252BEE1A2400608EA1 /* monero_libwallet2_api_c.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXCopyFilesBuildPhase section */
|
||||
|
@ -27,7 +27,7 @@
|
|||
dstPath = "";
|
||||
dstSubfolderSpec = 10;
|
||||
files = (
|
||||
CE5E8A262BEE1A2500608EA1 /* monero_libwallet2_api_c.dylib in CopyFiles */,
|
||||
0C50DFB92BF3CB56002B0EB3 /* MoneroWallet.framework in CopyFiles */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
@ -36,6 +36,7 @@
|
|||
/* Begin PBXFileReference section */
|
||||
0C400E0F25B21ABB0025E469 /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = "<group>"; };
|
||||
0C44A7192518EF8000B570ED /* decrypt.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = decrypt.swift; sourceTree = "<group>"; };
|
||||
0C50DFB82BF3CB56002B0EB3 /* MoneroWallet.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = MoneroWallet.framework; sourceTree = "<group>"; };
|
||||
0C9986A3251A932F00D566FD /* CryptoSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = CryptoSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
0C9D68C8264854B60011B691 /* secRandom.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = secRandom.swift; sourceTree = "<group>"; };
|
||||
11F9FC13F9EE2A705B213FA9 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
|
@ -57,7 +58,6 @@
|
|||
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
9F46EE5D2BC11178009318F5 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = PrivacyInfo.xcprivacy; sourceTree = "<group>"; };
|
||||
AD0937B0140D5A4C24E73BEA /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; };
|
||||
CE5E8A252BEE1A2400608EA1 /* monero_libwallet2_api_c.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; path = monero_libwallet2_api_c.dylib; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
|
@ -115,7 +115,7 @@
|
|||
97C146E51CF9000F007C117D = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CE5E8A252BEE1A2400608EA1 /* monero_libwallet2_api_c.dylib */,
|
||||
0C50DFB82BF3CB56002B0EB3 /* MoneroWallet.framework */,
|
||||
0C44A7182518EF4A00B570ED /* CakeWallet */,
|
||||
9740EEB11CF90186004384FC /* Flutter */,
|
||||
97C146F01CF9000F007C117D /* Runner */,
|
||||
|
@ -158,13 +158,13 @@
|
|||
buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */;
|
||||
buildPhases = (
|
||||
B91154210ADCED81FBF06A85 /* [CP] Check Pods Manifest.lock */,
|
||||
CE5E8A222BEE19C700608EA1 /* CopyFiles */,
|
||||
9740EEB61CF901F6004384FC /* Run Script */,
|
||||
97C146EA1CF9000F007C117D /* Sources */,
|
||||
97C146EB1CF9000F007C117D /* Frameworks */,
|
||||
97C146EC1CF9000F007C117D /* Resources */,
|
||||
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
|
||||
32D0076A9969C0C38D68AF62 /* [CP] Embed Pods Frameworks */,
|
||||
CE5E8A222BEE19C700608EA1 /* CopyFiles */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import 'dart:async';
|
||||
|
||||
import 'dart:io' show Platform;
|
||||
import 'package:cake_wallet/anonpay/anonpay_invoice_info.dart';
|
||||
import 'package:cake_wallet/buy/order.dart';
|
||||
import 'package:cake_wallet/core/auth_service.dart';
|
||||
|
@ -66,12 +66,17 @@ import 'package:cake_wallet/monero/monero.dart';
|
|||
import 'package:cw_core/cake_hive.dart';
|
||||
import 'package:uni_links/uni_links.dart';
|
||||
import 'package:cw_core/window_size.dart';
|
||||
import 'package:monero/monero.dart' as monero_dart;
|
||||
|
||||
final navigatorKey = GlobalKey<NavigatorState>();
|
||||
final rootKey = GlobalKey<RootState>();
|
||||
final RouteObserver<PageRoute<dynamic>> routeObserver = RouteObserver<PageRoute<dynamic>>();
|
||||
|
||||
Future<void> main() async {
|
||||
if (Platform.isIOS) {
|
||||
monero_dart.libPath = "MoneroWallet.framework/MoneroWallet";
|
||||
}
|
||||
|
||||
bool isAppRunning = false;
|
||||
await runZonedGuarded(() async {
|
||||
WidgetsFlutterBinding.ensureInitialized();
|
||||
|
|
|
@ -9,7 +9,7 @@ if [ -z "$APP_IOS_TYPE" ]; then
|
|||
echo "Please set APP_IOS_TYPE"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
./gen_framework.sh
|
||||
cd .. # go to scipts
|
||||
./gen_android_manifest.sh
|
||||
cd .. # go to root
|
||||
|
|
16
scripts/ios/gen_framework.sh
Executable file
16
scripts/ios/gen_framework.sh
Executable file
|
@ -0,0 +1,16 @@
|
|||
#!/bin/sh
|
||||
# Assume we are in scripts/ios
|
||||
IOS_DIR="$(pwd)/../../ios"
|
||||
DYLIB_NAME="monero_libwallet2_api_c.dylib"
|
||||
DYLIB_LINK_PATH="${IOS_DIR}/${DYLIB_NAME}"
|
||||
FRWK_DIR="${IOS_DIR}/MoneroWallet.framework"
|
||||
|
||||
if [ ! -f $DYLIB_LINK_PATH ]; then
|
||||
echo "Dylib is not found by the link: ${DYLIB_LINK_PATH}"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
cd $FRWK_DIR # go to iOS framework dir
|
||||
lipo -create $DYLIB_LINK_PATH -output MoneroWallet
|
||||
|
||||
echo "Generated ${FRWK_DIR}"
|
Loading…
Reference in a new issue