@ -1,6 +1,7 @@
|
||||
<hbuilder version="1.9.9.80110" debug="false" syncDebug ="true"> |
||||
<apps> |
||||
<app appid="__UNI__ACD00DA" appver="1.0"/> |
||||
<app appid="__UNI__ACD00DA" appver="1.0"/> |
||||
</apps> |
||||
</hbuilder> |
||||
|
||||
|
Before Width: | Height: | Size: 501 KiB After Width: | Height: | Size: 118 KiB |
Before Width: | Height: | Size: 477 KiB After Width: | Height: | Size: 127 KiB |
Before Width: | Height: | Size: 552 KiB After Width: | Height: | Size: 139 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 5.0 KiB |
Before Width: | Height: | Size: 338 KiB After Width: | Height: | Size: 240 KiB |
Before Width: | Height: | Size: 1005 KiB After Width: | Height: | Size: 208 KiB |
Before Width: | Height: | Size: 971 KiB After Width: | Height: | Size: 236 KiB |
Before Width: | Height: | Size: 1.1 MiB After Width: | Height: | Size: 256 KiB |
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 8.1 KiB |
Before Width: | Height: | Size: 338 KiB After Width: | Height: | Size: 483 KiB |
Before Width: | Height: | Size: 157 KiB After Width: | Height: | Size: 43 KiB |
Before Width: | Height: | Size: 143 KiB After Width: | Height: | Size: 44 KiB |
Before Width: | Height: | Size: 170 KiB After Width: | Height: | Size: 47 KiB |
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 338 KiB After Width: | Height: | Size: 76 KiB |
@ -1,33 +0,0 @@
|
||||
*.mode1v3 |
||||
*.mode2v3 |
||||
*.moved-aside |
||||
*.pbxuser |
||||
*.perspectivev3 |
||||
**/*sync/ |
||||
.sconsign.dblite |
||||
.tags* |
||||
**/.vagrant/ |
||||
**/DerivedData/ |
||||
Icon? |
||||
**/Pods/ |
||||
**/.symlinks/ |
||||
profile |
||||
xcuserdata |
||||
**/.generated/ |
||||
Flutter/App.framework |
||||
Flutter/Flutter.framework |
||||
Flutter/Flutter.podspec |
||||
Flutter/Generated.xcconfig |
||||
Flutter/ephemeral/ |
||||
Flutter/app.flx |
||||
Flutter/app.zip |
||||
Flutter/flutter_assets/ |
||||
Flutter/flutter_export_environment.sh |
||||
ServiceDefinitions.json |
||||
Runner/GeneratedPluginRegistrant.* |
||||
|
||||
# Exceptions to above rules. |
||||
!default.mode1v3 |
||||
!default.mode2v3 |
||||
!default.pbxuser |
||||
!default.perspectivev3 |
@ -1,26 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>CFBundleDevelopmentRegion</key> |
||||
<string>zh_CN</string> |
||||
<key>CFBundleExecutable</key> |
||||
<string>App</string> |
||||
<key>CFBundleIdentifier</key> |
||||
<string>com.zsw.yixinhuixiang</string> |
||||
<key>CFBundleInfoDictionaryVersion</key> |
||||
<string>6.0</string> |
||||
<key>CFBundleName</key> |
||||
<string>App</string> |
||||
<key>CFBundlePackageType</key> |
||||
<string>FMWK</string> |
||||
<key>CFBundleShortVersionString</key> |
||||
<string>1.0</string> |
||||
<key>CFBundleSignature</key> |
||||
<string>????</string> |
||||
<key>CFBundleVersion</key> |
||||
<string>1.0</string> |
||||
<key>MinimumOSVersion</key> |
||||
<string>9.0</string> |
||||
</dict> |
||||
</plist> |
@ -1,2 +0,0 @@
|
||||
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" |
||||
#include "Generated.xcconfig" |
@ -1,2 +0,0 @@
|
||||
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" |
||||
#include "Generated.xcconfig" |
@ -1,42 +0,0 @@
|
||||
# Uncomment this line to define a global platform for your project |
||||
# platform :ios, '9.0' |
||||
|
||||
# CocoaPods analytics sends network stats synchronously affecting flutter build latency. |
||||
ENV['COCOAPODS_DISABLE_STATS'] = 'true' |
||||
|
||||
project 'Runner', { |
||||
'Debug' => :debug, |
||||
'Profile' => :release, |
||||
'Release' => :release, |
||||
} |
||||
|
||||
def flutter_root |
||||
generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__) |
||||
unless File.exist?(generated_xcode_build_settings_path) |
||||
raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" |
||||
end |
||||
|
||||
File.foreach(generated_xcode_build_settings_path) do |line| |
||||
matches = line.match(/FLUTTER_ROOT\=(.*)/) |
||||
return matches[1].strip if matches |
||||
end |
||||
raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get" |
||||
end |
||||
|
||||
require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) |
||||
|
||||
flutter_ios_podfile_setup |
||||
|
||||
target 'Runner' do |
||||
use_frameworks! |
||||
use_modular_headers! |
||||
|
||||
flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) |
||||
end |
||||
|
||||
post_install do |installer| |
||||
installer.pods_project.targets.each do |target| |
||||
flutter_additional_ios_build_settings(target) |
||||
end |
||||
end |
||||
|
@ -1,100 +0,0 @@
|
||||
PODS: |
||||
- AMap3DMap (7.9.0): |
||||
- AMapFoundation (~> 1.6.6) |
||||
- amap_flutter_location (0.0.1): |
||||
- AMapLocation (~> 2.6.7) |
||||
- Flutter |
||||
- amap_flutter_map (0.0.1): |
||||
- AMap3DMap |
||||
- Flutter |
||||
- AMapFoundation (1.6.7) |
||||
- AMapLocation (2.6.8): |
||||
- AMapFoundation (~> 1.6.4) |
||||
- Flutter (1.0.0) |
||||
- fluttertoast (0.0.2): |
||||
- Flutter |
||||
- Toast |
||||
- image_cropper (0.0.4): |
||||
- Flutter |
||||
- TOCropViewController (~> 2.6.0) |
||||
- image_picker (0.0.1): |
||||
- Flutter |
||||
- "permission_handler (5.1.0+2)": |
||||
- Flutter |
||||
- shared_preferences (0.0.1): |
||||
- Flutter |
||||
- Toast (4.0.0) |
||||
- TOCropViewController (2.6.0) |
||||
- video_player (0.0.1): |
||||
- Flutter |
||||
- wakelock (0.0.1): |
||||
- Flutter |
||||
- webview_flutter (0.0.1): |
||||
- Flutter |
||||
|
||||
DEPENDENCIES: |
||||
- amap_flutter_location (from `.symlinks/plugins/amap_flutter_location/ios`) |
||||
- amap_flutter_map (from `.symlinks/plugins/amap_flutter_map/ios`) |
||||
- Flutter (from `Flutter`) |
||||
- fluttertoast (from `.symlinks/plugins/fluttertoast/ios`) |
||||
- image_cropper (from `.symlinks/plugins/image_cropper/ios`) |
||||
- image_picker (from `.symlinks/plugins/image_picker/ios`) |
||||
- permission_handler (from `.symlinks/plugins/permission_handler/ios`) |
||||
- shared_preferences (from `.symlinks/plugins/shared_preferences/ios`) |
||||
- video_player (from `.symlinks/plugins/video_player/ios`) |
||||
- wakelock (from `.symlinks/plugins/wakelock/ios`) |
||||
- webview_flutter (from `.symlinks/plugins/webview_flutter/ios`) |
||||
|
||||
SPEC REPOS: |
||||
trunk: |
||||
- AMap3DMap |
||||
- AMapFoundation |
||||
- AMapLocation |
||||
- Toast |
||||
- TOCropViewController |
||||
|
||||
EXTERNAL SOURCES: |
||||
amap_flutter_location: |
||||
:path: ".symlinks/plugins/amap_flutter_location/ios" |
||||
amap_flutter_map: |
||||
:path: ".symlinks/plugins/amap_flutter_map/ios" |
||||
Flutter: |
||||
:path: Flutter |
||||
fluttertoast: |
||||
:path: ".symlinks/plugins/fluttertoast/ios" |
||||
image_cropper: |
||||
:path: ".symlinks/plugins/image_cropper/ios" |
||||
image_picker: |
||||
:path: ".symlinks/plugins/image_picker/ios" |
||||
permission_handler: |
||||
:path: ".symlinks/plugins/permission_handler/ios" |
||||
shared_preferences: |
||||
:path: ".symlinks/plugins/shared_preferences/ios" |
||||
video_player: |
||||
:path: ".symlinks/plugins/video_player/ios" |
||||
wakelock: |
||||
:path: ".symlinks/plugins/wakelock/ios" |
||||
webview_flutter: |
||||
:path: ".symlinks/plugins/webview_flutter/ios" |
||||
|
||||
SPEC CHECKSUMS: |
||||
AMap3DMap: 4ff760f011b89aec85edd8b5fcf90d384aae1202 |
||||
amap_flutter_location: 3e33b57f1aad80b0dfb4b399de857a1a9f071e62 |
||||
amap_flutter_map: 979e54d227cedac6c7504a2151bfbf3bcf96760a |
||||
AMapFoundation: c7da72b42a713f1429c88af1858d623dde88934b |
||||
AMapLocation: dad27669c4ca68e395ce7532ff614b7d4d45f7b7 |
||||
Flutter: 434fef37c0980e73bb6479ef766c45957d4b510c |
||||
fluttertoast: 6122fa75143e992b1d3470f61000f591a798cc58 |
||||
image_cropper: f1668dd8d2cad2d357955caad15a40547856edcb |
||||
image_picker: 9c3312491f862b28d21ecd8fdf0ee14e601b3f09 |
||||
permission_handler: ccb20a9fad0ee9b1314a52b70b76b473c5f8dab0 |
||||
shared_preferences: af6bfa751691cdc24be3045c43ec037377ada40d |
||||
Toast: 91b396c56ee72a5790816f40d3a94dd357abc196 |
||||
TOCropViewController: 3105367e808b7d3d886a74ff59bf4804e7d3ab38 |
||||
video_player: 9cc823b1d9da7e8427ee591e8438bfbcde500e6e |
||||
wakelock: bfc7955c418d0db797614075aabbc58a39ab5107 |
||||
webview_flutter: d2b4d6c66968ad042ad94cbb791f5b72b4678a96 |
||||
|
||||
PODFILE CHECKSUM: 80a5bea9f6900750909f6d3fad1d3a0f1e560f5a |
||||
|
||||
COCOAPODS: 1.9.1 |
@ -1,732 +0,0 @@
|
||||
// !$*UTF8*$! |
||||
{ |
||||
archiveVersion = 1; |
||||
classes = { |
||||
}; |
||||
objectVersion = 51; |
||||
objects = { |
||||
|
||||
/* Begin PBXBuildFile section */ |
||||
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; |
||||
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; |
||||
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; |
||||
7D05B55EA8C2ECD1708F92A2 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F2320ABFFF6437281BD669B8 /* Pods_Runner.framework */; }; |
||||
89FD2B59267CA8F20096F581 /* JavaScriptCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B58267CA8F20096F581 /* JavaScriptCore.framework */; }; |
||||
89FD2B5B267CA90E0096F581 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B5A267CA90E0096F581 /* AVFoundation.framework */; }; |
||||
89FD2B5D267CA91A0096F581 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B5C267CA91A0096F581 /* OpenGLES.framework */; }; |
||||
89FD2B5F267CA92C0096F581 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B5E267CA92C0096F581 /* CoreGraphics.framework */; }; |
||||
89FD2B61267CA9370096F581 /* CoreTelephony.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B60267CA9370096F581 /* CoreTelephony.framework */; }; |
||||
89FD2B63267CA94B0096F581 /* AddressBook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B62267CA94A0096F581 /* AddressBook.framework */; }; |
||||
89FD2B65267CA9590096F581 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B64267CA9590096F581 /* CoreMedia.framework */; }; |
||||
89FD2B67267CA9620096F581 /* AVKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B66267CA9620096F581 /* AVKit.framework */; }; |
||||
89FD2B69267CA96E0096F581 /* CoreText.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B68267CA96E0096F581 /* CoreText.framework */; }; |
||||
89FD2B6B267CA97D0096F581 /* libc++.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B6A267CA97D0096F581 /* libc++.tbd */; }; |
||||
89FD2B6D267CA9880096F581 /* AssetsLibrary.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B6C267CA9880096F581 /* AssetsLibrary.framework */; }; |
||||
89FD2B6F267CA99A0096F581 /* libiconv.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B6E267CA99A0096F581 /* libiconv.tbd */; }; |
||||
89FD2B71267CA9A30096F581 /* MediaPlayer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B70267CA9A30096F581 /* MediaPlayer.framework */; }; |
||||
89FD2B73267CA9AD0096F581 /* GLKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B72267CA9AD0096F581 /* GLKit.framework */; }; |
||||
89FD2B75267CA9B40096F581 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B74267CA9B40096F581 /* QuartzCore.framework */; }; |
||||
89FD2B77267CA9BD0096F581 /* QuickLook.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B76267CA9BD0096F581 /* QuickLook.framework */; }; |
||||
89FD2B79267CA9CA0096F581 /* CoreLocation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 89FD2B78267CA9CA0096F581 /* CoreLocation.framework */; }; |
||||
89FD2BB0267CBF9D0096F581 /* SwiftMinPlugin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89FD2BAF267CBF9D0096F581 /* SwiftMinPlugin.swift */; }; |
||||
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; |
||||
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; |
||||
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; |
||||
/* End PBXBuildFile section */ |
||||
|
||||
/* Begin PBXCopyFilesBuildPhase section */ |
||||
9705A1C41CF9048500538489 /* Embed Frameworks */ = { |
||||
isa = PBXCopyFilesBuildPhase; |
||||
buildActionMask = 2147483647; |
||||
dstPath = ""; |
||||
dstSubfolderSpec = 10; |
||||
files = ( |
||||
); |
||||
name = "Embed Frameworks"; |
||||
runOnlyForDeploymentPostprocessing = 0; |
||||
}; |
||||
/* End PBXCopyFilesBuildPhase section */ |
||||
|
||||
/* Begin PBXFileReference section */ |
||||
052D2C662690B88300E13C32 /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = "<group>"; }; |
||||
07D433417D1E71C6BEBF9AE7 /* 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>"; }; |
||||
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; }; |
||||
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; }; |
||||
22D7DB7C8836E8F8A8633CAB /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; }; |
||||
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; }; |
||||
54DB46578BBB0ADFD189F53C /* 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>"; }; |
||||
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; }; |
||||
74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; }; |
||||
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; }; |
||||
89FD2B58267CA8F20096F581 /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; |
||||
89FD2B5A267CA90E0096F581 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; |
||||
89FD2B5C267CA91A0096F581 /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; }; |
||||
89FD2B5E267CA92C0096F581 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; |
||||
89FD2B60267CA9370096F581 /* CoreTelephony.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreTelephony.framework; path = System/Library/Frameworks/CoreTelephony.framework; sourceTree = SDKROOT; }; |
||||
89FD2B62267CA94A0096F581 /* AddressBook.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AddressBook.framework; path = System/Library/Frameworks/AddressBook.framework; sourceTree = SDKROOT; }; |
||||
89FD2B64267CA9590096F581 /* CoreMedia.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMedia.framework; path = System/Library/Frameworks/CoreMedia.framework; sourceTree = SDKROOT; }; |
||||
89FD2B66267CA9620096F581 /* AVKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVKit.framework; path = System/Library/Frameworks/AVKit.framework; sourceTree = SDKROOT; }; |
||||
89FD2B68267CA96E0096F581 /* CoreText.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreText.framework; path = System/Library/Frameworks/CoreText.framework; sourceTree = SDKROOT; }; |
||||
89FD2B6A267CA97D0096F581 /* libc++.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = "libc++.tbd"; path = "usr/lib/libc++.tbd"; sourceTree = SDKROOT; }; |
||||
89FD2B6C267CA9880096F581 /* AssetsLibrary.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AssetsLibrary.framework; path = System/Library/Frameworks/AssetsLibrary.framework; sourceTree = SDKROOT; }; |
||||
89FD2B6E267CA99A0096F581 /* libiconv.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libiconv.tbd; path = usr/lib/libiconv.tbd; sourceTree = SDKROOT; }; |
||||
89FD2B70267CA9A30096F581 /* MediaPlayer.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MediaPlayer.framework; path = System/Library/Frameworks/MediaPlayer.framework; sourceTree = SDKROOT; }; |
||||
89FD2B72267CA9AD0096F581 /* GLKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GLKit.framework; path = System/Library/Frameworks/GLKit.framework; sourceTree = SDKROOT; }; |
||||
89FD2B74267CA9B40096F581 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; |
||||
89FD2B76267CA9BD0096F581 /* QuickLook.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuickLook.framework; path = System/Library/Frameworks/QuickLook.framework; sourceTree = SDKROOT; }; |
||||
89FD2B78267CA9CA0096F581 /* CoreLocation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreLocation.framework; path = System/Library/Frameworks/CoreLocation.framework; sourceTree = SDKROOT; }; |
||||
89FD2BAF267CBF9D0096F581 /* SwiftMinPlugin.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftMinPlugin.swift; sourceTree = "<group>"; }; |
||||
89FD2BB3267CC0830096F581 /* MinPlugin.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MinPlugin.h; sourceTree = "<group>"; }; |
||||
9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; }; |
||||
9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; }; |
||||
97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
||||
97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; }; |
||||
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; |
||||
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; }; |
||||
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; |
||||
F2320ABFFF6437281BD669B8 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; |
||||
/* End PBXFileReference section */ |
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */ |
||||
97C146EB1CF9000F007C117D /* Frameworks */ = { |
||||
isa = PBXFrameworksBuildPhase; |
||||
buildActionMask = 2147483647; |
||||
files = ( |
||||
89FD2B79267CA9CA0096F581 /* CoreLocation.framework in Frameworks */, |
||||
89FD2B77267CA9BD0096F581 /* QuickLook.framework in Frameworks */, |
||||
89FD2B75267CA9B40096F581 /* QuartzCore.framework in Frameworks */, |
||||
89FD2B73267CA9AD0096F581 /* GLKit.framework in Frameworks */, |
||||
89FD2B71267CA9A30096F581 /* MediaPlayer.framework in Frameworks */, |
||||
89FD2B6F267CA99A0096F581 /* libiconv.tbd in Frameworks */, |
||||
89FD2B6D267CA9880096F581 /* AssetsLibrary.framework in Frameworks */, |
||||
89FD2B6B267CA97D0096F581 /* libc++.tbd in Frameworks */, |
||||
89FD2B69267CA96E0096F581 /* CoreText.framework in Frameworks */, |
||||
89FD2B67267CA9620096F581 /* AVKit.framework in Frameworks */, |
||||
89FD2B65267CA9590096F581 /* CoreMedia.framework in Frameworks */, |
||||
89FD2B63267CA94B0096F581 /* AddressBook.framework in Frameworks */, |
||||
89FD2B61267CA9370096F581 /* CoreTelephony.framework in Frameworks */, |
||||
89FD2B5F267CA92C0096F581 /* CoreGraphics.framework in Frameworks */, |
||||
89FD2B5D267CA91A0096F581 /* OpenGLES.framework in Frameworks */, |
||||
89FD2B5B267CA90E0096F581 /* AVFoundation.framework in Frameworks */, |
||||
89FD2B59267CA8F20096F581 /* JavaScriptCore.framework in Frameworks */, |
||||
7D05B55EA8C2ECD1708F92A2 /* Pods_Runner.framework in Frameworks */, |
||||
); |
||||
runOnlyForDeploymentPostprocessing = 0; |
||||
}; |
||||
/* End PBXFrameworksBuildPhase section */ |
||||
|
||||
/* Begin PBXGroup section */ |
||||
0485BB88CB64F946A09CD99C /* Frameworks */ = { |
||||
isa = PBXGroup; |
||||
children = ( |
||||
89FD2B78267CA9CA0096F581 /* CoreLocation.framework */, |
||||
89FD2B76267CA9BD0096F581 /* QuickLook.framework */, |
||||
89FD2B74267CA9B40096F581 /* QuartzCore.framework */, |
||||
89FD2B72267CA9AD0096F581 /* GLKit.framework */, |
||||
89FD2B70267CA9A30096F581 /* MediaPlayer.framework */, |
||||
89FD2B6E267CA99A0096F581 /* libiconv.tbd */, |
||||
89FD2B6C267CA9880096F581 /* AssetsLibrary.framework */, |
||||
89FD2B6A267CA97D0096F581 /* libc++.tbd */, |
||||
89FD2B68267CA96E0096F581 /* CoreText.framework */, |
||||
89FD2B66267CA9620096F581 /* AVKit.framework */, |
||||
89FD2B64267CA9590096F581 /* CoreMedia.framework */, |
||||
89FD2B62267CA94A0096F581 /* AddressBook.framework */, |
||||
89FD2B60267CA9370096F581 /* CoreTelephony.framework */, |
||||
89FD2B5E267CA92C0096F581 /* CoreGraphics.framework */, |
||||
89FD2B5C267CA91A0096F581 /* OpenGLES.framework */, |
||||
89FD2B5A267CA90E0096F581 /* AVFoundation.framework */, |
||||
89FD2B58267CA8F20096F581 /* JavaScriptCore.framework */, |
||||
F2320ABFFF6437281BD669B8 /* Pods_Runner.framework */, |
||||
); |
||||
name = Frameworks; |
||||
sourceTree = "<group>"; |
||||
}; |
||||
65BD282ABD056C5D9CC5D337 /* Pods */ = { |
||||
isa = PBXGroup; |
||||
children = ( |
||||
07D433417D1E71C6BEBF9AE7 /* Pods-Runner.debug.xcconfig */, |
||||
22D7DB7C8836E8F8A8633CAB /* Pods-Runner.release.xcconfig */, |
||||
54DB46578BBB0ADFD189F53C /* Pods-Runner.profile.xcconfig */, |
||||
); |
||||
path = Pods; |
||||
sourceTree = "<group>"; |
||||
}; |
||||
9740EEB11CF90186004384FC /* Flutter */ = { |
||||
isa = PBXGroup; |
||||
children = ( |
||||
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, |
||||
9740EEB21CF90195004384FC /* Debug.xcconfig */, |
||||
7AFA3C8E1D35360C0083082E /* Release.xcconfig */, |
||||
9740EEB31CF90195004384FC /* Generated.xcconfig */, |
||||
); |
||||
name = Flutter; |
||||
sourceTree = "<group>"; |
||||
}; |
||||
97C146E51CF9000F007C117D = { |
||||
isa = PBXGroup; |
||||
children = ( |
||||
9740EEB11CF90186004384FC /* Flutter */, |
||||
97C146F01CF9000F007C117D /* Runner */, |
||||
97C146EF1CF9000F007C117D /* Products */, |
||||
65BD282ABD056C5D9CC5D337 /* Pods */, |
||||
0485BB88CB64F946A09CD99C /* Frameworks */, |
||||
); |
||||
sourceTree = "<group>"; |
||||
}; |
||||
97C146EF1CF9000F007C117D /* Products */ = { |
||||
isa = PBXGroup; |
||||
children = ( |
||||
97C146EE1CF9000F007C117D /* Runner.app */, |
||||
); |
||||
name = Products; |
||||
sourceTree = "<group>"; |
||||
}; |
||||
97C146F01CF9000F007C117D /* Runner */ = { |
||||
isa = PBXGroup; |
||||
children = ( |
||||
052D2C662690B88300E13C32 /* Runner.entitlements */, |
||||
97C146FA1CF9000F007C117D /* Main.storyboard */, |
||||
97C146FD1CF9000F007C117D /* Assets.xcassets */, |
||||
97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, |
||||
97C147021CF9000F007C117D /* Info.plist */, |
||||
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, |
||||
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, |
||||
74858FAE1ED2DC5600515810 /* AppDelegate.swift */, |
||||
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, |
||||
89FD2BAF267CBF9D0096F581 /* SwiftMinPlugin.swift */, |
||||
89FD2BB3267CC0830096F581 /* MinPlugin.h */, |
||||
); |
||||
path = Runner; |
||||
sourceTree = "<group>"; |
||||
}; |
||||
/* End PBXGroup section */ |
||||
|
||||
/* Begin PBXNativeTarget section */ |
||||
97C146ED1CF9000F007C117D /* Runner */ = { |
||||
isa = PBXNativeTarget; |
||||
buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; |
||||
buildPhases = ( |
||||
753534B0D6D82DBA43CCE5C0 /* [CP] Check Pods Manifest.lock */, |
||||
9740EEB61CF901F6004384FC /* Run Script */, |
||||
97C146EA1CF9000F007C117D /* Sources */, |
||||
97C146EB1CF9000F007C117D /* Frameworks */, |
||||
97C146EC1CF9000F007C117D /* Resources */, |
||||
9705A1C41CF9048500538489 /* Embed Frameworks */, |
||||
3B06AD1E1E4923F5004D2608 /* Thin Binary */, |
||||
9498B2A0B253447AE0DBC77C /* [CP] Copy Pods Resources */, |
||||
2F56D5D1E3E7B030AB5814E4 /* [CP] Embed Pods Frameworks */, |
||||
); |
||||
buildRules = ( |
||||
); |
||||
dependencies = ( |
||||
); |
||||
name = Runner; |
||||
productName = Runner; |
||||
productReference = 97C146EE1CF9000F007C117D /* Runner.app */; |
||||
productType = "com.apple.product-type.application"; |
||||
}; |
||||
/* End PBXNativeTarget section */ |
||||
|
||||
/* Begin PBXProject section */ |
||||
97C146E61CF9000F007C117D /* Project object */ = { |
||||
isa = PBXProject; |
||||
attributes = { |
||||
LastUpgradeCheck = 1020; |
||||
ORGANIZATIONNAME = ""; |
||||
TargetAttributes = { |
||||
97C146ED1CF9000F007C117D = { |
||||
CreatedOnToolsVersion = 7.3.1; |
||||
LastSwiftMigration = 1100; |
||||
}; |
||||
}; |
||||
}; |
||||
buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; |
||||
compatibilityVersion = "Xcode 9.3"; |
||||
developmentRegion = en; |
||||
hasScannedForEncodings = 0; |
||||
knownRegions = ( |
||||
en, |
||||
Base, |
||||
); |
||||
mainGroup = 97C146E51CF9000F007C117D; |
||||
productRefGroup = 97C146EF1CF9000F007C117D /* Products */; |
||||
projectDirPath = ""; |
||||
projectRoot = ""; |
||||
targets = ( |
||||
97C146ED1CF9000F007C117D /* Runner */, |
||||
); |
||||
}; |
||||
/* End PBXProject section */ |
||||
|
||||
/* Begin PBXResourcesBuildPhase section */ |
||||
97C146EC1CF9000F007C117D /* Resources */ = { |
||||
isa = PBXResourcesBuildPhase; |
||||
buildActionMask = 2147483647; |
||||
files = ( |
||||
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, |
||||
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, |
||||
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, |
||||
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, |
||||
); |
||||
runOnlyForDeploymentPostprocessing = 0; |
||||
}; |
||||
/* End PBXResourcesBuildPhase section */ |
||||
|
||||
/* Begin PBXShellScriptBuildPhase section */ |
||||
2F56D5D1E3E7B030AB5814E4 /* [CP] Embed Pods Frameworks */ = { |
||||
isa = PBXShellScriptBuildPhase; |
||||
buildActionMask = 2147483647; |
||||
files = ( |
||||
); |
||||
inputFileListPaths = ( |
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", |
||||
); |
||||
name = "[CP] Embed Pods Frameworks"; |
||||
outputFileListPaths = ( |
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", |
||||
); |
||||
runOnlyForDeploymentPostprocessing = 0; |
||||
shellPath = /bin/sh; |
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; |
||||
showEnvVarsInLog = 0; |
||||
}; |
||||
3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { |
||||
isa = PBXShellScriptBuildPhase; |
||||
buildActionMask = 2147483647; |
||||
files = ( |
||||
); |
||||
inputPaths = ( |
||||
); |
||||
name = "Thin Binary"; |
||||
outputPaths = ( |
||||
); |
||||
runOnlyForDeploymentPostprocessing = 0; |
||||
shellPath = /bin/sh; |
||||
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; |
||||
}; |
||||
753534B0D6D82DBA43CCE5C0 /* [CP] Check Pods Manifest.lock */ = { |
||||
isa = PBXShellScriptBuildPhase; |
||||
buildActionMask = 2147483647; |
||||
files = ( |
||||
); |
||||
inputFileListPaths = ( |
||||
); |
||||
inputPaths = ( |
||||
"${PODS_PODFILE_DIR_PATH}/Podfile.lock", |
||||
"${PODS_ROOT}/Manifest.lock", |
||||
); |
||||
name = "[CP] Check Pods Manifest.lock"; |
||||
outputFileListPaths = ( |
||||
); |
||||
outputPaths = ( |
||||
"$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", |
||||
); |
||||
runOnlyForDeploymentPostprocessing = 0; |
||||
shellPath = /bin/sh; |
||||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; |
||||
showEnvVarsInLog = 0; |
||||
}; |
||||
9498B2A0B253447AE0DBC77C /* [CP] Copy Pods Resources */ = { |
||||
isa = PBXShellScriptBuildPhase; |
||||
buildActionMask = 2147483647; |
||||
files = ( |
||||
); |
||||
inputFileListPaths = ( |
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist", |
||||
); |
||||
name = "[CP] Copy Pods Resources"; |
||||
outputFileListPaths = ( |
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist", |
||||
); |
||||
runOnlyForDeploymentPostprocessing = 0; |
||||
shellPath = /bin/sh; |
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n"; |
||||
showEnvVarsInLog = 0; |
||||
}; |
||||
9740EEB61CF901F6004384FC /* Run Script */ = { |
||||
isa = PBXShellScriptBuildPhase; |
||||
buildActionMask = 2147483647; |
||||
files = ( |
||||
); |
||||
inputPaths = ( |
||||
); |
||||
name = "Run Script"; |
||||
outputPaths = ( |
||||
); |
||||
runOnlyForDeploymentPostprocessing = 0; |
||||
shellPath = /bin/sh; |
||||
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; |
||||
}; |
||||
/* End PBXShellScriptBuildPhase section */ |
||||
|
||||
/* Begin PBXSourcesBuildPhase section */ |
||||
97C146EA1CF9000F007C117D /* Sources */ = { |
||||
isa = PBXSourcesBuildPhase; |
||||
buildActionMask = 2147483647; |
||||
files = ( |
||||
89FD2BB0267CBF9D0096F581 /* SwiftMinPlugin.swift in Sources */, |
||||
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, |
||||
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, |
||||
); |
||||
runOnlyForDeploymentPostprocessing = 0; |
||||
}; |
||||
/* End PBXSourcesBuildPhase section */ |
||||
|
||||
/* Begin PBXVariantGroup section */ |
||||
97C146FA1CF9000F007C117D /* Main.storyboard */ = { |
||||
isa = PBXVariantGroup; |
||||
children = ( |
||||
97C146FB1CF9000F007C117D /* Base */, |
||||
); |
||||
name = Main.storyboard; |
||||
sourceTree = "<group>"; |
||||
}; |
||||
97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { |
||||
isa = PBXVariantGroup; |
||||
children = ( |
||||
97C147001CF9000F007C117D /* Base */, |
||||
); |
||||
name = LaunchScreen.storyboard; |
||||
sourceTree = "<group>"; |
||||
}; |
||||
/* End PBXVariantGroup section */ |
||||
|
||||
/* Begin XCBuildConfiguration section */ |
||||
249021D3217E4FDB00AE95B9 /* Profile */ = { |
||||
isa = XCBuildConfiguration; |
||||
buildSettings = { |
||||
ALWAYS_SEARCH_USER_PATHS = NO; |
||||
CLANG_ANALYZER_NONNULL = YES; |
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; |
||||
CLANG_CXX_LIBRARY = "libc++"; |
||||
CLANG_ENABLE_MODULES = YES; |
||||
CLANG_ENABLE_OBJC_ARC = YES; |
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; |
||||
CLANG_WARN_BOOL_CONVERSION = YES; |
||||
CLANG_WARN_COMMA = YES; |
||||
CLANG_WARN_CONSTANT_CONVERSION = YES; |
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; |
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; |
||||
CLANG_WARN_EMPTY_BODY = YES; |
||||
CLANG_WARN_ENUM_CONVERSION = YES; |
||||
CLANG_WARN_INFINITE_RECURSION = YES; |
||||
CLANG_WARN_INT_CONVERSION = YES; |
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; |
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; |
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; |
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; |
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; |
||||
CLANG_WARN_STRICT_PROTOTYPES = YES; |
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES; |
||||
CLANG_WARN_UNREACHABLE_CODE = YES; |
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; |
||||
CODE_SIGN_IDENTITY = "iPhone Developer"; |
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; |
||||
COPY_PHASE_STRIP = NO; |
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; |
||||
ENABLE_NS_ASSERTIONS = NO; |
||||
ENABLE_STRICT_OBJC_MSGSEND = YES; |
||||
GCC_C_LANGUAGE_STANDARD = gnu99; |
||||
GCC_NO_COMMON_BLOCKS = YES; |
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES; |
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; |
||||
GCC_WARN_UNDECLARED_SELECTOR = YES; |
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; |
||||
GCC_WARN_UNUSED_FUNCTION = YES; |
||||
GCC_WARN_UNUSED_VARIABLE = YES; |
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0; |
||||
MTL_ENABLE_DEBUG_INFO = NO; |
||||
ONLY_ACTIVE_ARCH = YES; |
||||
OTHER_LDFLAGS = "-ObjC"; |
||||
SDKROOT = iphoneos; |
||||
SUPPORTED_PLATFORMS = "iphonesimulator iphoneos"; |
||||
TARGETED_DEVICE_FAMILY = "1,2"; |
||||
VALIDATE_PRODUCT = YES; |
||||
}; |
||||
name = Profile; |
||||
}; |
||||
249021D4217E4FDB00AE95B9 /* Profile */ = { |
||||
isa = XCBuildConfiguration; |
||||
baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; |
||||
buildSettings = { |
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; |
||||
CLANG_ENABLE_MODULES = YES; |
||||
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; |
||||
CODE_SIGN_IDENTITY = "iPhone Distribution"; |
||||
CODE_SIGN_STYLE = Manual; |
||||
CURRENT_PROJECT_VERSION = 3; |
||||
DEVELOPMENT_TEAM = YF3Q8DVP52; |
||||
ENABLE_BITCODE = NO; |
||||
FRAMEWORK_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"$(PROJECT_DIR)/UniMPSDK/Core/Libs", |
||||
); |
||||
HEADER_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/Toast/Toast.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/amap_flutter_location/amap_flutter_location.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/amap_flutter_map/amap_flutter_map.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/fluttertoast/fluttertoast.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/image_picker/image_picker.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/permission_handler/permission_handler.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/shared_preferences/shared_preferences.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/webview_flutter/webview_flutter.framework/Headers\"", |
||||
); |
||||
INFOPLIST_FILE = Runner/Info.plist; |
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0; |
||||
LD_RUNPATH_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"@executable_path/Frameworks", |
||||
); |
||||
LIBRARY_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"$(PROJECT_DIR)/UniMPSDK/Core/Libs", |
||||
); |
||||
MARKETING_VERSION = 1.0.2; |
||||
ONLY_ACTIVE_ARCH = YES; |
||||
PRODUCT_BUNDLE_IDENTIFIER = com.zsw.hx; |
||||
PRODUCT_NAME = "$(TARGET_NAME)"; |
||||
PROVISIONING_PROFILE_SPECIFIER = "huixiang app"; |
||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; |
||||
SWIFT_VERSION = 5.0; |
||||
VERSIONING_SYSTEM = "apple-generic"; |
||||
}; |
||||
name = Profile; |
||||
}; |
||||
97C147031CF9000F007C117D /* Debug */ = { |
||||
isa = XCBuildConfiguration; |
||||
buildSettings = { |
||||
ALWAYS_SEARCH_USER_PATHS = NO; |
||||
CLANG_ANALYZER_NONNULL = YES; |
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; |
||||
CLANG_CXX_LIBRARY = "libc++"; |
||||
CLANG_ENABLE_MODULES = YES; |
||||
CLANG_ENABLE_OBJC_ARC = YES; |
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; |
||||
CLANG_WARN_BOOL_CONVERSION = YES; |
||||
CLANG_WARN_COMMA = YES; |
||||
CLANG_WARN_CONSTANT_CONVERSION = YES; |
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; |
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; |
||||
CLANG_WARN_EMPTY_BODY = YES; |
||||
CLANG_WARN_ENUM_CONVERSION = YES; |
||||
CLANG_WARN_INFINITE_RECURSION = YES; |
||||
CLANG_WARN_INT_CONVERSION = YES; |
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; |
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; |
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; |
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; |
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; |
||||
CLANG_WARN_STRICT_PROTOTYPES = YES; |
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES; |
||||
CLANG_WARN_UNREACHABLE_CODE = YES; |
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; |
||||
CODE_SIGN_IDENTITY = "iPhone Developer"; |
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; |
||||
COPY_PHASE_STRIP = NO; |
||||
DEBUG_INFORMATION_FORMAT = dwarf; |
||||
ENABLE_STRICT_OBJC_MSGSEND = YES; |
||||
ENABLE_TESTABILITY = YES; |
||||
GCC_C_LANGUAGE_STANDARD = gnu99; |
||||
GCC_DYNAMIC_NO_PIC = NO; |
||||
GCC_NO_COMMON_BLOCKS = YES; |
||||
GCC_OPTIMIZATION_LEVEL = 0; |
||||
GCC_PREPROCESSOR_DEFINITIONS = ( |
||||
"DEBUG=1", |
||||
"$(inherited)", |
||||
); |
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES; |
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; |
||||
GCC_WARN_UNDECLARED_SELECTOR = YES; |
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; |
||||
GCC_WARN_UNUSED_FUNCTION = YES; |
||||
GCC_WARN_UNUSED_VARIABLE = YES; |
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0; |
||||
MTL_ENABLE_DEBUG_INFO = YES; |
||||
ONLY_ACTIVE_ARCH = YES; |
||||
OTHER_LDFLAGS = "-ObjC"; |
||||
SDKROOT = iphoneos; |
||||
TARGETED_DEVICE_FAMILY = "1,2"; |
||||
}; |
||||
name = Debug; |
||||
}; |
||||
97C147041CF9000F007C117D /* Release */ = { |
||||
isa = XCBuildConfiguration; |
||||
buildSettings = { |
||||
ALWAYS_SEARCH_USER_PATHS = NO; |
||||
CLANG_ANALYZER_NONNULL = YES; |
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; |
||||
CLANG_CXX_LIBRARY = "libc++"; |
||||
CLANG_ENABLE_MODULES = YES; |
||||
CLANG_ENABLE_OBJC_ARC = YES; |
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; |
||||
CLANG_WARN_BOOL_CONVERSION = YES; |
||||
CLANG_WARN_COMMA = YES; |
||||
CLANG_WARN_CONSTANT_CONVERSION = YES; |
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; |
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; |
||||
CLANG_WARN_EMPTY_BODY = YES; |
||||
CLANG_WARN_ENUM_CONVERSION = YES; |
||||
CLANG_WARN_INFINITE_RECURSION = YES; |
||||
CLANG_WARN_INT_CONVERSION = YES; |
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; |
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; |
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; |
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; |
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; |
||||
CLANG_WARN_STRICT_PROTOTYPES = YES; |
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES; |
||||
CLANG_WARN_UNREACHABLE_CODE = YES; |
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; |
||||
CODE_SIGN_IDENTITY = "iPhone Developer"; |
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; |
||||
COPY_PHASE_STRIP = NO; |
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; |
||||
ENABLE_NS_ASSERTIONS = NO; |
||||
ENABLE_STRICT_OBJC_MSGSEND = YES; |
||||
GCC_C_LANGUAGE_STANDARD = gnu99; |
||||
GCC_NO_COMMON_BLOCKS = YES; |
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES; |
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; |
||||
GCC_WARN_UNDECLARED_SELECTOR = YES; |
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; |
||||
GCC_WARN_UNUSED_FUNCTION = YES; |
||||
GCC_WARN_UNUSED_VARIABLE = YES; |
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0; |
||||
MTL_ENABLE_DEBUG_INFO = NO; |
||||
ONLY_ACTIVE_ARCH = YES; |
||||
OTHER_LDFLAGS = "-ObjC"; |
||||
SDKROOT = iphoneos; |
||||
SUPPORTED_PLATFORMS = "iphonesimulator iphoneos"; |
||||
SWIFT_COMPILATION_MODE = wholemodule; |
||||
SWIFT_OPTIMIZATION_LEVEL = "-O"; |
||||
TARGETED_DEVICE_FAMILY = "1,2"; |
||||
VALIDATE_PRODUCT = YES; |
||||
}; |
||||
name = Release; |
||||
}; |
||||
97C147061CF9000F007C117D /* Debug */ = { |
||||
isa = XCBuildConfiguration; |
||||
baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; |
||||
buildSettings = { |
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; |
||||
CLANG_ENABLE_MODULES = YES; |
||||
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; |
||||
CODE_SIGN_IDENTITY = "iPhone Distribution"; |
||||
CODE_SIGN_STYLE = Manual; |
||||
CURRENT_PROJECT_VERSION = 3; |
||||
DEVELOPMENT_TEAM = YF3Q8DVP52; |
||||
ENABLE_BITCODE = NO; |
||||
FRAMEWORK_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"$(PROJECT_DIR)/UniMPSDK/Core/Libs", |
||||
); |
||||
HEADER_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/Toast/Toast.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/amap_flutter_location/amap_flutter_location.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/amap_flutter_map/amap_flutter_map.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/fluttertoast/fluttertoast.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/image_picker/image_picker.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/permission_handler/permission_handler.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/shared_preferences/shared_preferences.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/webview_flutter/webview_flutter.framework/Headers\"", |
||||
); |
||||
INFOPLIST_FILE = Runner/Info.plist; |
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0; |
||||
LD_RUNPATH_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"@executable_path/Frameworks", |
||||
); |
||||
LIBRARY_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"$(PROJECT_DIR)/UniMPSDK/Core/Libs", |
||||
); |
||||
MARKETING_VERSION = 1.0.2; |
||||
ONLY_ACTIVE_ARCH = YES; |
||||
PRODUCT_BUNDLE_IDENTIFIER = com.zsw.hx; |
||||
PRODUCT_NAME = "$(TARGET_NAME)"; |
||||
PROVISIONING_PROFILE_SPECIFIER = "huixiang app"; |
||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; |
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone"; |
||||
SWIFT_VERSION = 5.0; |
||||
VERSIONING_SYSTEM = "apple-generic"; |
||||
}; |
||||
name = Debug; |
||||
}; |
||||
97C147071CF9000F007C117D /* Release */ = { |
||||
isa = XCBuildConfiguration; |
||||
baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; |
||||
buildSettings = { |
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; |
||||
CLANG_ENABLE_MODULES = YES; |
||||
CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; |
||||
CODE_SIGN_IDENTITY = "Apple Development"; |
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Distribution: Zhili Zhiji (Wuhan) Culture Technology Co., Ltd. (YF3Q8DVP52)"; |
||||
CODE_SIGN_STYLE = Manual; |
||||
CURRENT_PROJECT_VERSION = 3; |
||||
DEVELOPMENT_TEAM = YF3Q8DVP52; |
||||
ENABLE_BITCODE = NO; |
||||
FRAMEWORK_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"$(PROJECT_DIR)/UniMPSDK/Core/Libs", |
||||
); |
||||
HEADER_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/Toast/Toast.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/amap_flutter_location/amap_flutter_location.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/amap_flutter_map/amap_flutter_map.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/fluttertoast/fluttertoast.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/image_picker/image_picker.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/permission_handler/permission_handler.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/shared_preferences/shared_preferences.framework/Headers\"", |
||||
"\"${PODS_CONFIGURATION_BUILD_DIR}/webview_flutter/webview_flutter.framework/Headers\"", |
||||
); |
||||
INFOPLIST_FILE = Runner/Info.plist; |
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0; |
||||
LD_RUNPATH_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"@executable_path/Frameworks", |
||||
); |
||||
LIBRARY_SEARCH_PATHS = ( |
||||
"$(inherited)", |
||||
"$(PROJECT_DIR)/UniMPSDK/Core/Libs", |
||||
); |
||||
MARKETING_VERSION = 1.0.2; |
||||
ONLY_ACTIVE_ARCH = YES; |
||||
PRODUCT_BUNDLE_IDENTIFIER = com.zsw.hx; |
||||
PRODUCT_NAME = "$(TARGET_NAME)"; |
||||
PROVISIONING_PROFILE_SPECIFIER = "huixiang app"; |
||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; |
||||
SWIFT_VERSION = 5.0; |
||||
VERSIONING_SYSTEM = "apple-generic"; |
||||
}; |
||||
name = Release; |
||||
}; |
||||
/* End XCBuildConfiguration section */ |
||||
|
||||
/* Begin XCConfigurationList section */ |
||||
97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { |
||||
isa = XCConfigurationList; |
||||
buildConfigurations = ( |
||||
97C147031CF9000F007C117D /* Debug */, |
||||
97C147041CF9000F007C117D /* Release */, |
||||
249021D3217E4FDB00AE95B9 /* Profile */, |
||||
); |
||||
defaultConfigurationIsVisible = 0; |
||||
defaultConfigurationName = Release; |
||||
}; |
||||
97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { |
||||
isa = XCConfigurationList; |
||||
buildConfigurations = ( |
||||
97C147061CF9000F007C117D /* Debug */, |
||||
97C147071CF9000F007C117D /* Release */, |
||||
249021D4217E4FDB00AE95B9 /* Profile */, |
||||
); |
||||
defaultConfigurationIsVisible = 0; |
||||
defaultConfigurationName = Release; |
||||
}; |
||||
/* End XCConfigurationList section */ |
||||
}; |
||||
rootObject = 97C146E61CF9000F007C117D /* Project object */; |
||||
} |
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Workspace |
||||
version = "1.0"> |
||||
<FileRef |
||||
location = "self:"> |
||||
</FileRef> |
||||
</Workspace> |
@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>IDEDidComputeMac32BitWarning</key> |
||||
<true/> |
||||
</dict> |
||||
</plist> |
@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>PreviewsEnabled</key> |
||||
<false/> |
||||
</dict> |
||||
</plist> |
@ -1,87 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Scheme |
||||
LastUpgradeVersion = "1020" |
||||
version = "1.3"> |
||||
<BuildAction |
||||
parallelizeBuildables = "YES" |
||||
buildImplicitDependencies = "YES"> |
||||
<BuildActionEntries> |
||||
<BuildActionEntry |
||||
buildForTesting = "YES" |
||||
buildForRunning = "YES" |
||||
buildForProfiling = "YES" |
||||
buildForArchiving = "YES" |
||||
buildForAnalyzing = "YES"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "97C146ED1CF9000F007C117D" |
||||
BuildableName = "Runner.app" |
||||
BlueprintName = "Runner" |
||||
ReferencedContainer = "container:Runner.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildActionEntry> |
||||
</BuildActionEntries> |
||||
</BuildAction> |
||||
<TestAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
shouldUseLaunchSchemeArgsEnv = "YES"> |
||||
<MacroExpansion> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "97C146ED1CF9000F007C117D" |
||||
BuildableName = "Runner.app" |
||||
BlueprintName = "Runner" |
||||
ReferencedContainer = "container:Runner.xcodeproj"> |
||||
</BuildableReference> |
||||
</MacroExpansion> |
||||
<Testables> |
||||
</Testables> |
||||
</TestAction> |
||||
<LaunchAction |
||||
buildConfiguration = "Debug" |
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" |
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" |
||||
launchStyle = "0" |
||||
useCustomWorkingDirectory = "NO" |
||||
ignoresPersistentStateOnLaunch = "NO" |
||||
debugDocumentVersioning = "YES" |
||||
debugServiceExtension = "internal" |
||||
allowLocationSimulation = "YES"> |
||||
<BuildableProductRunnable |
||||
runnableDebuggingMode = "0"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "97C146ED1CF9000F007C117D" |
||||
BuildableName = "Runner.app" |
||||
BlueprintName = "Runner" |
||||
ReferencedContainer = "container:Runner.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildableProductRunnable> |
||||
</LaunchAction> |
||||
<ProfileAction |
||||
buildConfiguration = "Profile" |
||||
shouldUseLaunchSchemeArgsEnv = "YES" |
||||
savedToolIdentifier = "" |
||||
useCustomWorkingDirectory = "NO" |
||||
debugDocumentVersioning = "YES"> |
||||
<BuildableProductRunnable |
||||
runnableDebuggingMode = "0"> |
||||
<BuildableReference |
||||
BuildableIdentifier = "primary" |
||||
BlueprintIdentifier = "97C146ED1CF9000F007C117D" |
||||
BuildableName = "Runner.app" |
||||
BlueprintName = "Runner" |
||||
ReferencedContainer = "container:Runner.xcodeproj"> |
||||
</BuildableReference> |
||||
</BuildableProductRunnable> |
||||
</ProfileAction> |
||||
<AnalyzeAction |
||||
buildConfiguration = "Debug"> |
||||
</AnalyzeAction> |
||||
<ArchiveAction |
||||
buildConfiguration = "Release" |
||||
revealArchiveInOrganizer = "YES"> |
||||
</ArchiveAction> |
||||
</Scheme> |
@ -1,10 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<Workspace |
||||
version = "1.0"> |
||||
<FileRef |
||||
location = "group:Runner.xcodeproj"> |
||||
</FileRef> |
||||
<FileRef |
||||
location = "group:Pods/Pods.xcodeproj"> |
||||
</FileRef> |
||||
</Workspace> |
@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>IDEDidComputeMac32BitWarning</key> |
||||
<true/> |
||||
</dict> |
||||
</plist> |
@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||||
<plist version="1.0"> |
||||
<dict> |
||||
<key>PreviewsEnabled</key> |
||||
<false/> |
||||
</dict> |
||||
</plist> |
@ -1,15 +0,0 @@
|
||||
import UIKit |
||||
import Flutter |
||||
import AMapFoundationKit |
||||
|
||||
@UIApplicationMain |
||||
@objc class AppDelegate: FlutterAppDelegate { |
||||
override func application( |
||||
_ application: UIApplication, |
||||
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { |
||||
|
||||
GeneratedPluginRegistrant.register(with: self) |
||||
AMapServices.shared().apiKey = "feaae7986201b571cace1b83728be5bb" |
||||
return super.application(application, didFinishLaunchingWithOptions: launchOptions) |
||||
} |
||||
} |
@ -1,122 +0,0 @@
|
||||
{ |
||||
"images": [ |
||||
{ |
||||
"size": "20x20", |
||||
"idiom": "iphone", |
||||
"filename": "icon-20@2x.png", |
||||
"scale": "2x" |
||||
}, |
||||
{ |
||||
"size": "20x20", |
||||
"idiom": "iphone", |
||||
"filename": "icon-20@3x.png", |
||||
"scale": "3x" |
||||
}, |
||||
{ |
||||
"size": "29x29", |
||||
"idiom": "iphone", |
||||
"filename": "icon-29.png", |
||||
"scale": "1x" |
||||
}, |
||||
{ |
||||
"size": "29x29", |
||||
"idiom": "iphone", |
||||
"filename": "icon-29@2x.png", |
||||
"scale": "2x" |
||||
}, |
||||
{ |
||||
"size": "29x29", |
||||
"idiom": "iphone", |
||||
"filename": "icon-29@3x.png", |
||||
"scale": "3x" |
||||
}, |
||||
{ |
||||
"size": "40x40", |
||||
"idiom": "iphone", |
||||
"filename": "icon-40@2x.png", |
||||
"scale": "2x" |
||||
}, |
||||
{ |
||||
"size": "40x40", |
||||
"idiom": "iphone", |
||||
"filename": "icon-40@3x.png", |
||||
"scale": "3x" |
||||
}, |
||||
{ |
||||
"size": "60x60", |
||||
"idiom": "iphone", |
||||
"filename": "icon-60@2x.png", |
||||
"scale": "2x" |
||||
}, |
||||
{ |
||||
"size": "60x60", |
||||
"idiom": "iphone", |
||||
"filename": "icon-60@3x.png", |
||||
"scale": "3x" |
||||
}, |
||||
{ |
||||
"size": "20x20", |
||||
"idiom": "ipad", |
||||
"filename": "icon-20-ipad.png", |
||||
"scale": "1x" |
||||
}, |
||||
{ |
||||
"size": "20x20", |
||||
"idiom": "ipad", |
||||
"filename": "icon-20@2x-ipad.png", |
||||
"scale": "2x" |
||||
}, |
||||
{ |
||||
"size": "29x29", |
||||
"idiom": "ipad", |
||||
"filename": "icon-29-ipad.png", |
||||
"scale": "1x" |
||||
}, |
||||
{ |
||||
"size": "29x29", |
||||
"idiom": "ipad", |
||||
"filename": "icon-29@2x-ipad.png", |
||||
"scale": "2x" |
||||
}, |
||||
{ |
||||
"size": "40x40", |
||||
"idiom": "ipad", |
||||
"filename": "icon-40.png", |
||||
"scale": "1x" |
||||
}, |
||||
{ |
||||
"size": "40x40", |
||||
"idiom": "ipad", |
||||
"filename": "icon-40@2x.png", |
||||
"scale": "2x" |
||||
}, |
||||
{ |
||||
"size": "76x76", |
||||
"idiom": "ipad", |
||||
"filename": "icon-76.png", |
||||
"scale": "1x" |
||||
}, |
||||
{ |
||||
"size": "76x76", |
||||
"idiom": "ipad", |
||||
"filename": "icon-76@2x.png", |
||||
"scale": "2x" |
||||
}, |
||||
{ |
||||
"size": "83.5x83.5", |
||||
"idiom": "ipad", |
||||
"filename": "icon-83.5@2x.png", |
||||
"scale": "2x" |
||||
}, |
||||
{ |
||||
"size": "1024x1024", |
||||
"idiom": "ios-marketing", |
||||
"filename": "icon-1024.png", |
||||
"scale": "1x" |
||||
} |
||||
], |
||||
"info": { |
||||
"version": 1, |
||||
"author": "icon.wuruihong.com" |
||||
} |
||||
} |
Before Width: | Height: | Size: 59 KiB |
Before Width: | Height: | Size: 962 B |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 3.7 KiB |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 3.3 KiB |
Before Width: | Height: | Size: 6.2 KiB |
Before Width: | Height: | Size: 6.2 KiB |
Before Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 8.7 KiB |
Before Width: | Height: | Size: 10 KiB |
@ -1,23 +0,0 @@
|
||||
{ |
||||
"images" : [ |
||||
{ |
||||
"filename" : "引导页备份.png", |
||||
"idiom" : "universal", |
||||
"scale" : "1x" |
||||
}, |
||||
{ |
||||
"filename" : "引导页备份@2x.png", |
||||
"idiom" : "universal", |
||||
"scale" : "2x" |
||||
}, |
||||
{ |
||||
"filename" : "引导页备份@3x.png", |
||||
"idiom" : "universal", |
||||
"scale" : "3x" |
||||
} |
||||
], |
||||
"info" : { |
||||
"author" : "xcode", |
||||
"version" : 1 |
||||
} |
||||
} |
@ -1,5 +0,0 @@
|
||||
# Launch Screen Assets |
||||
|
||||
You can customize the launch screen with your own desired assets by replacing the image files in this directory. |
||||
|
||||
You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. |
Before Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 65 KiB |
Before Width: | Height: | Size: 118 KiB |
@ -1,41 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?> |
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="18122" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" colorMatched="YES" initialViewController="01J-lp-oVM"> |
||||
<device id="retina6_1" orientation="portrait" appearance="light"/> |
||||
<dependencies> |
||||
<deployment identifier="iOS"/> |
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="18093"/> |
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> |
||||
</dependencies> |
||||
<scenes> |
||||
<!--View Controller--> |
||||
<scene sceneID="EHf-IW-A2E"> |
||||
<objects> |
||||
<viewController id="01J-lp-oVM" sceneMemberID="viewController"> |
||||
<layoutGuides> |
||||
<viewControllerLayoutGuide type="top" id="Ydg-fD-yQy"/> |
||||
<viewControllerLayoutGuide type="bottom" id="xbc-2k-c8Z"/> |
||||
</layoutGuides> |
||||
<view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3"> |
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/> |
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> |
||||
<subviews> |
||||
<imageView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" misplaced="YES" image="LaunchImage" translatesAutoresizingMaskIntoConstraints="NO" id="YRO-k0-Ey4"> |
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/> |
||||
</imageView> |
||||
</subviews> |
||||
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
||||
<constraints> |
||||
<constraint firstItem="YRO-k0-Ey4" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="1a2-6s-vTC"/> |
||||
<constraint firstItem="YRO-k0-Ey4" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="4X2-HB-R7a"/> |
||||
</constraints> |
||||
</view> |
||||
</viewController> |
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/> |
||||
</objects> |
||||
<point key="canvasLocation" x="76.811594202898561" y="251.11607142857142"/> |
||||
</scene> |
||||
</scenes> |
||||
<resources> |
||||
<image name="LaunchImage" width="375" height="750"/> |
||||
</resources> |
||||
</document> |
@ -1,26 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?> |
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="10117" systemVersion="15F34" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" initialViewController="BYZ-38-t0r"> |
||||
<dependencies> |
||||
<deployment identifier="iOS"/> |
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="10085"/> |
||||
</dependencies> |
||||
<scenes> |
||||
<!--Flutter View Controller--> |
||||
<scene sceneID="tne-QT-ifu"> |
||||
<objects> |
||||
<viewController id="BYZ-38-t0r" customClass="FlutterViewController" sceneMemberID="viewController"> |
||||
<layoutGuides> |
||||
<viewControllerLayoutGuide type="top" id="y3c-jy-aDJ"/> |
||||
<viewControllerLayoutGuide type="bottom" id="wfy-db-euE"/> |
||||
</layoutGuides> |
||||
<view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC"> |
||||
<rect key="frame" x="0.0" y="0.0" width="600" height="600"/> |
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> |
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> |
||||
</view> |
||||
</viewController> |
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/> |
||||
</objects> |
||||
</scene> |
||||
</scenes> |
||||
</document> |
@ -0,0 +1,22 @@
|
||||
//
|
||||
// DCUniMP.h
|
||||
// DCUniMP
|
||||
//
|
||||
// Created by XHY on 2020/1/14.
|
||||
// Copyright © 2020 DCloud. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h> |
||||
|
||||
//! Project version number for DCUniMP.
|
||||
FOUNDATION_EXPORT double DCUniMPVersionNumber; |
||||
|
||||
//! Project version string for DCUniMP.
|
||||
FOUNDATION_EXPORT const unsigned char DCUniMPVersionString[]; |
||||
|
||||
// In this header, you should import all the public headers of your framework using statements like #import <DCUniMP/PublicHeader.h>
|
||||
|
||||
#import "DCUniMPSDKEngine.h" |
||||
#import "DCUniMPMenuActionSheetStyle.h" |
||||
#import "DCUniMPInstance.h" |
||||
#import "DCUniMPError.h" |
@ -0,0 +1,33 @@
|
||||
//
|
||||
// DCUniMPConfiguration.h
|
||||
// libPDRCore
|
||||
//
|
||||
// Created by XHY on 2020/6/16.
|
||||
// Copyright © 2020 DCloud. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h> |
||||
|
||||
NS_ASSUME_NONNULL_BEGIN |
||||
|
||||
/// 打开小程序页面的方式
|
||||
typedef NS_ENUM(NSUInteger,DCUniMPOpenMode) { |
||||
/// 获取宿主当前显示的 ViewController 调用 presentViewController:animated:completion: 方法打开小程序页面对应的 DCUniMPViewController
|
||||
DCUniMPOpenModePresent, |
||||
/// 获取宿主当前显示的 ViewController 对应的 navigationController 调用 pushViewController:animated: 方法打开小程序页面对应的 DCUniMPViewController,注意:如果 navigationController 不存在则使用 DCUniMPOpenModePresent 的方式打开
|
||||
DCUniMPOpenModePush |
||||
}; |
||||
|
||||
@interface DCUniMPConfiguration : NSObject |
||||
|
||||
@property (nonatomic, strong, nullable) NSDictionary *arguments; /**< 启动参数(在小程序中通过 plus.runtime.arguments 获取此参数)默认:nil*/ |
||||
@property (nonatomic, copy, nullable) NSString *redirectPath; /**< 启动后直接打开的页面路径 例:"pages/component/view/view?a=1&b=2" 默认:nil*/ |
||||
@property (nonatomic, assign) BOOL enableBackground; /**< 是否开启后台运行(退出小程序时隐藏到后台不销毁小程序应用) 默认:NO*/ |
||||
@property (nonatomic, assign) BOOL showAnimated; /**< 是否开启 show 小程序时的动画效果 默认:YES */ |
||||
@property (nonatomic, assign) BOOL hideAnimated; /**< 是否开启 hide 时的动画效果 默认:YES*/ |
||||
@property (nonatomic, assign) DCUniMPOpenMode openMode; /**< 打开小程序的方式 默认: DCUniMPOpenModePresent*/ |
||||
@property(nonatomic, assign) BOOL enableGestureClose; /**< 是否开启手势关闭小程序 默认:NO */ |
||||
|
||||
@end |
||||
|
||||
NS_ASSUME_NONNULL_END |
@ -0,0 +1,29 @@
|
||||
//
|
||||
// DCUniMPError.h
|
||||
// libPDRCore
|
||||
//
|
||||
// Created by XHY on 2020/6/15.
|
||||
// Copyright © 2020 DCloud. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h> |
||||
|
||||
NS_ASSUME_NONNULL_BEGIN |
||||
|
||||
static NSString * const DCUniMPErrorDomain = @"DCUniMPErrorDomain"; |
||||
|
||||
typedef NS_ENUM(NSInteger,DCUniMPErrorCode) { |
||||
/// 未知错误
|
||||
DCUniMPErrorUnknown = -999, |
||||
/// 应用资源不存在
|
||||
DCUniMPErrorUniMPResourcesDoesNotExist = -1001, |
||||
/// 非v3编译模式
|
||||
DCUniMPErrorNotCompiledByV3Mode = -1002, |
||||
/// 重复调用
|
||||
DCUniMPErrorRepeatedBehavior = -2001, |
||||
/// 小程序未运行
|
||||
DCUniMPErrorUniMPNotRunning = -3001, |
||||
/// 已存在运行的小程序
|
||||
DCUniMPErrorExistOtherUniMPRunning = 3002 |
||||
}; |
||||
NS_ASSUME_NONNULL_END |
@ -0,0 +1,38 @@
|
||||
//
|
||||
// DCUniMPInstance.h
|
||||
// DCUniMP
|
||||
//
|
||||
// Created by XHY on 2020/1/14.
|
||||
// Copyright © 2020 DCloud. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h> |
||||
#import "DCUniMPConfiguration.h" |
||||
|
||||
/// 方法执行回调block
|
||||
/// @param success 是否执行成功
|
||||
/// @param error 失败信息
|
||||
typedef void(^DCUniMPResultBlock)(BOOL success, NSError *_Nullable error); |
||||
|
||||
NS_ASSUME_NONNULL_BEGIN |
||||
|
||||
@interface DCUniMPInstance : NSObject |
||||
|
||||
@property (nonatomic, copy, readonly) NSString *appid; /**< 小程序的 appid */ |
||||
@property (nonatomic, strong) DCUniMPConfiguration *configuration; /**< 小程序应用的配置信息 */ |
||||
|
||||
/// 将小程序显示到前台
|
||||
/// @param completion 方法执行回调
|
||||
- (void)showWithCompletion:(DCUniMPResultBlock)completion; |
||||
|
||||
/// 将小程序隐藏到后台
|
||||
/// @param completion 方法执行回调
|
||||
- (void)hideWithCompletion:(DCUniMPResultBlock)completion; |
||||
|
||||
/// 关闭小程序
|
||||
/// @param completion 方法执行回调
|
||||
- (void)closeWithCompletion:(DCUniMPResultBlock)completion; |
||||
|
||||
@end |
||||
|
||||
NS_ASSUME_NONNULL_END |
@ -0,0 +1,43 @@
|
||||
//
|
||||
// DCUniMPMenuActionSheetStyle.h
|
||||
// libPDRCore
|
||||
//
|
||||
// Created by XHY on 2020/2/5.
|
||||
// Copyright © 2020 DCloud. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h> |
||||
#import <UIKit/UIKit.h> |
||||
|
||||
NS_ASSUME_NONNULL_BEGIN |
||||
|
||||
@interface DCUniMPMenuActionSheetStyle : NSObject |
||||
|
||||
/// ActionSheet 按钮字体颜色 支持:"#RRGGBB" 和 "rgba(R,G,B,A)" 格式字符串。默认值黑色
|
||||
@property (nonatomic, copy) NSString *textColor; |
||||
|
||||
/// ActionSheet 按钮文字大小 。默认值 16
|
||||
@property (nonatomic, assign) CGFloat fontSize; |
||||
|
||||
/// ActionSheet 按钮文字的粗细 可取值:"normal" - 标准字体; "bold" - 加粗字体。 默认值为"normal"。
|
||||
@property (nonatomic, copy) NSString *fontWeight; |
||||
|
||||
@end |
||||
|
||||
@interface DCUniMPMenuActionSheetItem : NSObject |
||||
|
||||
/// 标题
|
||||
@property (nonatomic, copy) NSString *title; |
||||
|
||||
/// item 标识(当点击 ActionSheet 对应的 item 返回此标识)
|
||||
@property (nonatomic, copy) NSString *identifier; |
||||
|
||||
|
||||
/// 实例化方法
|
||||
/// @param title 标题
|
||||
/// @param identifier 标识
|
||||
- (instancetype)initWithTitle:(NSString *)title identifier:(NSString *)identifier; |
||||
|
||||
@end |
||||
|
||||
NS_ASSUME_NONNULL_END |
@ -0,0 +1,185 @@
|
||||
//
|
||||
// DCUniMPSDKEngine.h
|
||||
// DCUniMP
|
||||
//
|
||||
// Created by XHY on 2020/1/14.
|
||||
// Copyright © 2020 DCloud. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h> |
||||
#import <UIKit/UIKit.h> |
||||
#import "DCUniMPInstance.h" |
||||
#import "DCUniMPMenuActionSheetStyle.h" |
||||
|
||||
/// 加载小程序 block 回调
|
||||
/// uniMPInstance: 加载成功返回小程序实例,失败则为 nil
|
||||
/// error:失败信息
|
||||
typedef void(^DCUniMPCompletionBlock)(DCUniMPInstance *_Nullable uniMPInstance, NSError *_Nullable error); |
||||
|
||||
NS_ASSUME_NONNULL_BEGIN |
||||
|
||||
@protocol DCUniMPSDKEngineDelegate <NSObject> |
||||
|
||||
///
|
||||
/// 回调数据给小程序
|
||||
/// result:回调参数支持 NSString 或 NSDictionary 类型
|
||||
/// keepAlive:如果 keepAlive 为 YES,则可以多次回调数据给小程序,反之触发一次后回调方法即被移除
|
||||
typedef void (^DCUniMPKeepAliveCallback)(id result, BOOL keepAlive); |
||||
|
||||
@optional |
||||
/// 胶囊按钮菜单 ActionSheetItem 点击回调方法
|
||||
/// @param identifier item 项的标识
|
||||
- (void)defaultMenuItemClicked:(NSString *)identifier; |
||||
|
||||
/// 返回打开小程序时的闪屏视图
|
||||
/// @param appid appid
|
||||
- (UIView *)splashViewForApp:(NSString *)appid; |
||||
|
||||
/// 关闭小程序的回调方法
|
||||
/// @param appid appid
|
||||
- (void)uniMPOnClose:(NSString *)appid; |
||||
|
||||
|
||||
/// 小程序向原生发送事件回调方法
|
||||
/// @param event 事件名称
|
||||
/// @param data 数据:NSString 或 NSDictionary 类型
|
||||
/// @param callback 回调数据给小程序
|
||||
- (void)onUniMPEventReceive:(NSString *)event data:(id)data callback:(DCUniMPKeepAliveCallback)callback; |
||||
|
||||
@end |
||||
|
||||
@interface DCUniMPSDKEngine : NSObject |
||||
|
||||
#pragma mark - SDK 全局生命周期方法 |
||||
/// 初始化 sdk 全局环境
|
||||
/// @param options 启动参数
|
||||
+ (void)initSDKEnvironmentWithLaunchOptions:(NSDictionary *)options; |
||||
|
||||
/// 释放SDK资源
|
||||
+ (void)destory; |
||||
|
||||
#pragma mark - 小程序应用相关方法 |
||||
|
||||
/// 小程序打开状态,调用此方法可获取小程序对应的 DCUniMPViewController 实例
|
||||
+ (UIViewController *)getUniMPViewController; |
||||
|
||||
/// 获取 App 运行路径,注:需要将应用资源放到此路径下
|
||||
/// @param appid appid
|
||||
+ (NSString *)getAppRunPathWithAppid:(NSString *)appid; |
||||
|
||||
/// 运行目录中是否已经存在 App
|
||||
/// @param appid appid
|
||||
+ (BOOL)isExistsApp:(NSString *)appid; |
||||
|
||||
/// 将wgt应用资源包部署到运行路径中
|
||||
/// @param appid appid
|
||||
/// @param wgtPath wgt应用资源包路径
|
||||
+ (BOOL)releaseAppResourceToRunPathWithAppid:(NSString *)appid |
||||
resourceFilePath:(NSString *)wgtPath; |
||||
|
||||
/// 启动小程序
|
||||
/// @param appid appid
|
||||
/// @param configuration 小程序的配置信息
|
||||
/// @param completionBlock 方法执行回调
|
||||
+ (void)openUniMP:(NSString *)appid |
||||
configuration:(DCUniMPConfiguration *)configuration |
||||
completed:(DCUniMPCompletionBlock)completionBlock; |
||||
|
||||
/// 预加载小程序
|
||||
/// @param appid appid
|
||||
/// @param configuration 小程序的配置信息
|
||||
/// @param completionBlock 方法执行回调
|
||||
+ (void)preloadUniMP:(NSString *)appid |
||||
configuration:(DCUniMPConfiguration * __nullable)configuration |
||||
completed:(DCUniMPCompletionBlock)completionBlock; |
||||
|
||||
/// 关闭当前显示的小程序应用
|
||||
+ (void)closeUniMP; |
||||
|
||||
/// 获取当前显示的小程序appid
|
||||
+ (NSString *)getActiveUniMPAppid; |
||||
|
||||
|
||||
/// 获取当前显示小程序页面的直达链接url
|
||||
+ (NSString *)getCurrentPageUrl; |
||||
|
||||
|
||||
/// 获取已经部署的小程序应用资源版本信息
|
||||
/// @param appid appid
|
||||
/// 返回数据为 manifest 中的配置信息
|
||||
/// {
|
||||
/// "name": "1.0.0", // 应用版本名称
|
||||
/// "code": 100 // 应用版本号
|
||||
/// }
|
||||
+ (NSDictionary *__nullable)getUniMPVersionInfoWithAppid:(NSString *)appid; |
||||
|
||||
|
||||
/// 向小程序发送事件
|
||||
/// @param event 事件名称
|
||||
/// @param data 数据:NSString 或 NSDictionary 类型
|
||||
+ (void)sendUniMPEvent:(NSString *)event data:(id)data; |
||||
|
||||
/// 小程序页面关闭时设置原生导航栏的显隐 (请使用此方法来控制进入小程序页面或离开小程序页面导航栏的显隐,不然导航栏的显隐效果不好,可能会出现闪一下的情况)
|
||||
/// 说明:当小程序是通过 DCUniMPOpenModePush 方式打开(即通过原生导航控制器push方式打开小程序页面)如果系统导航栏是显示状态,进入小程序时会隐藏系统导航栏并在小程序页面关闭或从小程序页面在 push 到宿主其他原生页面时会将系统导航栏恢复之前的显隐状态;如果您想控制导航栏的显隐可通过此方法来实现
|
||||
/// 场景:在显示系统导航栏的页面 push 进入小程序页面,从小程序页面 push 到其他原生页面时需要隐藏系统导航栏,则可以在跳转页面前调用此方法来处理;
|
||||
/// 注意:只有通过 push 的方式打开小程序才生效
|
||||
/// @param hidden 是否隐藏
|
||||
+ (void)whenUniMPCloseSetNavigationBarHidden:(BOOL)hidden; |
||||
|
||||
#pragma mark - 胶囊按钮相关方法 |
||||
|
||||
/// 设置导航栏上的胶囊按钮显示还是隐藏(默认显示)
|
||||
/// @param menuButtonHidden Bool 是否隐藏胶囊按钮
|
||||
+ (void)setMenuButtonHidden:(BOOL)menuButtonHidden; |
||||
|
||||
/// 配置点击菜单按钮弹出 ActionSheet 视图的样式
|
||||
/// @param menuActionSheetStyle DCUniMPMenuActionSheetStyle
|
||||
+ (void)configMenuActionSheetStyle:(DCUniMPMenuActionSheetStyle *)menuActionSheetStyle; |
||||
|
||||
/// 配置胶囊按钮菜单 ActionSheet 全局项
|
||||
/// @param items DCUniMPMenuActionSheetItem 数组
|
||||
+ (void)setDefaultMenuItems:(NSArray<DCUniMPMenuActionSheetItem *> *)items; |
||||
|
||||
|
||||
/// 设置 DCUniMPSDKEngineDelegate
|
||||
/// @param delegate 代理对象
|
||||
+ (void)setDelegate:(id<DCUniMPSDKEngineDelegate>)delegate; |
||||
|
||||
#pragma mark - App 生命周期方法 |
||||
+ (void)applicationDidBecomeActive:(UIApplication *)application; |
||||
+ (void)applicationWillResignActive:(UIApplication *)application; |
||||
+ (void)applicationDidEnterBackground:(UIApplication *)application; |
||||
+ (void)applicationWillEnterForeground:(UIApplication *)application; |
||||
|
||||
|
||||
#pragma mark - 如果需要使用 URL Scheme 或 通用链接相关功能,请实现以下方法 |
||||
+ (void)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options; |
||||
+ (void)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity; |
||||
|
||||
#pragma mark - 如需使用远程推送相关功能,请实现以下方法 |
||||
+ (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken; |
||||
+ (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error; |
||||
+ (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo; |
||||
|
||||
#pragma mark - 如需使用本地推送通知功能,请实现以下方法 |
||||
+ (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification; |
||||
|
||||
|
||||
#pragma mark - deprecated (废弃API) |
||||
/// 启动 App
|
||||
/// @param appid appid
|
||||
/// @param arguments 启动参数(可以在小程序中通过 plus.runtime.arguments 获取此参数)
|
||||
+ (void)openApp:(NSString *)appid |
||||
arguments:(NSDictionary * __nullable)arguments __attribute__((deprecated("deprecated, Use -openUniMP:configuration:completed:"))); |
||||
|
||||
/// 启动 App
|
||||
/// @param appid appid
|
||||
/// @param arguments 启动参数(可以在小程序中通过 plus.runtime.arguments 获取此参数)
|
||||
/// @param redirectPath 启动后直接打开的页面路径 例:"pages/component/view/view?a=1&b=2"
|
||||
+ (void)openApp:(NSString *)appid |
||||
arguments:(NSDictionary * _Nullable)arguments |
||||
redirectPath:(NSString * _Nullable)redirectPath __attribute__((deprecated("deprecated, Use -openUniMP:configuration:completed:"))); |
||||
|
||||
@end |
||||
|
||||
NS_ASSUME_NONNULL_END |
@ -0,0 +1,26 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <JavaScriptCore/JavaScriptCore.h> |
||||
|
||||
@interface JSContext (Weex) |
||||
|
||||
@property (nonatomic, strong) NSString *instanceId; |
||||
|
||||
@end |
@ -0,0 +1,27 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
|
||||
#import <Foundation/Foundation.h> |
||||
|
||||
@interface NSObject (WXSwizzle) |
||||
|
||||
+ (BOOL)weex_swizzle:(Class)originalClass Method:(SEL)originalSelector withMethod:(SEL)swizzledSelector; |
||||
|
||||
@end |
@ -0,0 +1,33 @@
|
||||
//
|
||||
// UniPluginProtocol.h
|
||||
// libWeex
|
||||
//
|
||||
// Created by 4Ndf on 2018/11/30.
|
||||
// Copyright © 2018年 DCloud. All rights reserved.
|
||||
//
|
||||
#import <UIKit/UIApplication.h> |
||||
@protocol UniPluginProtocol <NSObject> |
||||
//@required // 必须实现的方法
|
||||
-(void)onCreateUniPlugin; |
||||
|
||||
- (BOOL)application:(UIApplication *_Nullable)application didFinishLaunchingWithOptions:(NSDictionary *_Nullable)launchOptions; |
||||
- (void)application:(UIApplication *_Nullable)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *_Nullable)deviceToken; |
||||
- (void)application:(UIApplication *_Nullable)application didFailToRegisterForRemoteNotificationsWithError:(NSError *_Nullable)err; |
||||
- (void)application:(UIApplication *_Nullable)application didReceiveRemoteNotification:(NSDictionary *_Nullable)userInfo; |
||||
- (void)application:(UIApplication *_Nullable)application didReceiveRemoteNotification:(NSDictionary *_Nullable)userInfo fetchCompletionHandler:(void (^_Nullable)(UIBackgroundFetchResult))completionHandler; |
||||
- (void)application:(UIApplication *_Nullable)application didReceiveLocalNotification:(UILocalNotification *_Nullable)notification; |
||||
- (BOOL)application:(UIApplication *_Nullable)application handleOpenURL:(NSURL *_Nullable)url; |
||||
- (BOOL)application:(UIApplication *_Nullable)application openURL:(NSURL *_Nullable)url sourceApplication:(NSString *_Nullable)sourceApplication annotation:(id _Nonnull )annotation; |
||||
- (BOOL)application:(UIApplication *_Nullable)app openURL:(NSURL *_Nonnull)url options:(NSDictionary<UIApplicationOpenURLOptionsKey, id> *_Nullable)options NS_AVAILABLE_IOS(9_0); |
||||
|
||||
- (void)applicationWillResignActive:(UIApplication * _Nullable)application; |
||||
- (void)applicationDidBecomeActive:(UIApplication *_Nullable)application; |
||||
- (void)applicationDidEnterBackground:(UIApplication *_Nullable)application; |
||||
- (void)applicationWillEnterForeground:(UIApplication *_Nullable)application; |
||||
- (void)applicationWillTerminate:(UIApplication *_Nullable)application; |
||||
- (void)applicationDidReceiveMemoryWarning:(UIApplication *_Nullable)application; |
||||
- (void)application:(UIApplication *_Nullable)application performActionForShortcutItem:(UIApplicationShortcutItem *_Nullable)shortcutItem completionHandler:(void (^_Nullable)(BOOL))completionHandler API_AVAILABLE(ios(9.0)); |
||||
- (void)application:(UIApplication *_Nullable)application handleEventsForBackgroundURLSession:(NSString *_Nonnull)identifier completionHandler:(void (^_Nullable)(void))completionHandler; |
||||
- (BOOL)application:(UIApplication *_Nullable)application continueUserActivity:(NSUserActivity *_Nullable)userActivity restorationHandler:(void(^_Nullable)(NSArray * __nullable restorableObjects))restorationHandler API_AVAILABLE(ios(8.0)); |
||||
|
||||
@end |
@ -0,0 +1,24 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import "WXComponent.h" |
||||
|
||||
@interface WXAComponent : WXComponent <UIGestureRecognizerDelegate> |
||||
|
||||
@end |
@ -0,0 +1,37 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <Foundation/Foundation.h> |
||||
#import "WXAnalyzerProtocol.h" |
||||
|
||||
@interface WXAnalyzerCenter : NSObject |
||||
|
||||
+(NSMutableArray<WXAnalyzerProtocol> *) getAnalyzerList; |
||||
|
||||
+(void) addWxAnalyzer:(id<WXAnalyzerProtocol>)handler; |
||||
|
||||
+(void) rmWxAnalyzer:(id<WXAnalyzerProtocol>)handler; |
||||
|
||||
+(void) setOpen:(BOOL)isOpen; |
||||
+(BOOL) isOpen; |
||||
|
||||
+(void) switchInteractionLog:(BOOL) isOpen; |
||||
+(BOOL) isInteractionLogOpen; |
||||
|
||||
@end |
@ -0,0 +1,44 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <Foundation/Foundation.h> |
||||
#import "WXAppMonitorProtocol.h" |
||||
|
||||
#define GROUP_ANALYZER @"WXAnalyzer" |
||||
#define MODULE_PERFORMANCE @"WXPerformance" |
||||
#define MODULE_ERROR @"WXError" |
||||
#define TYPE_MEASURE_REAL @"measure_real_time" |
||||
#define TYPE_DIMEN_REAL @"dimen_real_time" |
||||
#define TYPE_JS_ERROR @"js" |
||||
|
||||
@protocol WXAnalyzerProtocol <NSObject> |
||||
|
||||
|
||||
@required |
||||
/**
|
||||
@param value = @{ |
||||
@"group":group, |
||||
@"module":module, |
||||
@"type":type, |
||||
@"data":jsonData |
||||
}; |
||||
*/ |
||||
- (void)transfer:(NSDictionary *) value; |
||||
|
||||
@end |
@ -0,0 +1,147 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <Foundation/Foundation.h> |
||||
#import "WXJSExceptionInfo.h" |
||||
|
||||
#pragma mark - const static string |
||||
|
||||
extern NSString* const WEEX_PAGE_TOPIC; |
||||
|
||||
/************** properties *****************/ |
||||
extern NSString* const KEY_PROPERTIES_ERROR_CODE; |
||||
extern NSString* const KEY_PAGE_PROPERTIES_BIZ_ID; |
||||
extern NSString* const KEY_PAGE_PROPERTIES_BUBDLE_URL; |
||||
extern NSString* const KEY_PAGE_PROPERTIES_JSLIB_VERSION; |
||||
extern NSString* const KEY_PAGE_PROPERTIES_WEEX_VERSION; |
||||
extern NSString* const KEY_PAGE_PROPERTIES_REQUEST_TYPE; |
||||
extern NSString* const KEY_PAGE_PROPERTIES_Z_CACHE_INFO; |
||||
extern NSString* const KEY_PAGE_PROPERTIES_JS_FM_INIT; |
||||
extern NSString* const KEY_PAGE_PROPERTIES_BUNDLE_TYPE; |
||||
extern NSString* const KEY_PAGE_PROPERTIES_CONTAINER_NAME; |
||||
extern NSString* const KEY_PAGE_PROPERTIES_INSTANCE_TYPE; |
||||
extern NSString* const KEY_PAGE_PROPERTIES_PARENT_PAGE; |
||||
extern NSString* const KEY_PAGE_PROPERTIES_RENDER_TYPE; |
||||
|
||||
|
||||
///************** stages *****************/
|
||||
extern NSString* const KEY_PAGE_STAGES_START; |
||||
extern NSString* const KEY_PAGE_STAGES_DOWN_BUNDLE_START; |
||||
extern NSString* const KEY_PAGE_STAGES_DOWN_BUNDLE_END; |
||||
extern NSString* const KEY_PAGE_STAGES_RENDER_ORGIGIN; |
||||
extern NSString* const KEY_PAGE_STAGES_LOAD_BUNDLE_START; |
||||
extern NSString* const KEY_PAGE_STAGES_LOAD_BUNDLE_END; |
||||
extern NSString* const KEY_PAGE_STAGES_CREATE_FINISH; |
||||
extern NSString* const KEY_PAGE_STAGES_FSRENDER; |
||||
extern NSString* const KEY_PAGE_STAGES_NEW_FSRENDER; |
||||
extern NSString* const KEY_PAGE_STAGES_INTERACTION; |
||||
extern NSString* const KEY_PAGE_STAGES_DESTROY; |
||||
|
||||
///************** stats *****************/
|
||||
extern NSString* const KEY_PAGE_STATS_BUNDLE_SIZE; |
||||
extern NSString* const KEY_PAGE_STATS_FS_CALL_JS_TIME; |
||||
extern NSString* const KEY_PAGE_STATS_FS_CALL_JS_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_FS_TIMER_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_FS_CALL_NATIVE_TIME; |
||||
extern NSString* const KEY_PAGE_STATS_FS_CALL_NATIVE_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_FS_CALL_EVENT_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_FS_REQUEST_NUM; |
||||
|
||||
extern NSString* const KEY_PAGE_STATS_SCROLLER_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_CELL_EXCEED_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_CELL_UN_RE_USE_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_CELL_DATA_UN_RECYCLE_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_EMBED_COUNT; |
||||
extern NSString* const KEY_PAGE_STATS_LARGE_IMG_COUNT; |
||||
|
||||
extern NSString* const KEY_PAGE_STATS_MAX_DEEP_VIEW; |
||||
extern NSString* const KEY_PAGE_STATS_MAX_DEEP_DOM; |
||||
extern NSString* const KEY_PAGE_STATS_MAX_COMPONENT_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_WRONG_IMG_SIZE_COUNT; |
||||
extern NSString* const KEY_PAGE_STATS_IMG_UN_RECYCLE_NUM; |
||||
|
||||
extern NSString* const KEY_PAGE_STATS_I_SCREEN_VIEW_COUNT; |
||||
extern NSString* const KEY_PAGE_STATS_I_ALL_VIEW_COUNT; |
||||
|
||||
extern NSString* const KEY_PAGE_STATS_I_COMPONENT_CREATE_COUNT; |
||||
extern NSString* const KEY_PAGE_ANIM_BACK_NUM; |
||||
extern NSString* const KEY_PAGE_TIMER_BACK_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_ACTUAL_DOWNLOAD_TIME; |
||||
|
||||
extern NSString* const KEY_PAGE_STATS_IMG_LOAD_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_IMG_LOAD_SUCCESS_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_IMG_LOAD_FAIL_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_NET_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_NET_SUCCESS_NUM; |
||||
extern NSString* const KEY_PAGE_STATS_NET_FAIL_NUM; |
||||
extern NSString* const KEY_PAGE_STAGES_FIRST_INTERACTION_VIEW; |
||||
extern NSString* const KEY_PAGE_STATS_BODY_RATIO; |
||||
|
||||
///************** value *****************/
|
||||
extern NSString* const VALUE_ERROR_CODE_DEFAULT; |
||||
|
||||
|
||||
|
||||
@interface WXApmForInstance : NSObject |
||||
|
||||
@property (nonatomic, assign) BOOL isFSEnd; |
||||
@property (nonatomic,assign) BOOL isOpenApm; |
||||
@property (nonatomic, assign) BOOL isStartRecord; |
||||
@property (nonatomic, assign) BOOL hasAddView; |
||||
@property (nonatomic, assign) BOOL isDegrade; |
||||
@property (nonatomic, assign) BOOL isStartRender; |
||||
@property (nonatomic,assign) BOOL hasRecordFirstInterationView; |
||||
@property (nonatomic, assign) BOOL isDownLoadFailed; |
||||
@property (nonatomic,assign) double pageRatio; |
||||
|
||||
#pragma mark - basic method |
||||
|
||||
- (void) onEvent:(NSString *)name withValue:(id)value; |
||||
- (void) onStage:(NSString *)name; |
||||
- (void) onStageWithTime:(NSString*)name time:(long)unixTime; |
||||
- (void) setProperty:(NSString *)name withValue:(id)value; |
||||
- (void) setStatistic:(NSString *)name withValue:(double)value; |
||||
|
||||
#pragma mark - instance record |
||||
|
||||
- (void) startRecord:(NSString*) instanceId; |
||||
- (void) endRecord; |
||||
- (void) updateFSDiffStats:(NSString *)name withDiffValue:(double)diff; |
||||
- (void) updateDiffStats:(NSString *)name withDiffValue:(double)diff; |
||||
- (void) updateMaxStats:(NSString *)name curMaxValue:(double)maxValue; |
||||
- (void) updateExtInfoFromResponseHeader:(NSDictionary*) extInfo; |
||||
- (void) forceSetInteractionTime:(long) unixTime; |
||||
|
||||
|
||||
#pragma mark - called by IWXHttpAdapter implementer |
||||
|
||||
- (void) actionNetRequest; |
||||
- (void) actionNetRequestResult:(bool)succeed withErrorCode:(NSString*)errorCode; |
||||
|
||||
#pragma mark - called by IWXImgLoaderAdapter implementer |
||||
- (void) actionImgLoad; |
||||
- (void) actionImgLoadResult:(bool)succeed withErrorCode:(NSString*)errorCode; |
||||
|
||||
#pragma mark record top5 errorMsg |
||||
- (void) recordErrorMsg:(WXJSExceptionInfo *)exception; |
||||
- (NSDictionary<NSString*,NSNumber*>*) stageDic; |
||||
|
||||
#pragma mark templateinfo |
||||
- (NSString*) templateInfo; |
||||
@end |
@ -0,0 +1,102 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <Foundation/Foundation.h> |
||||
|
||||
|
||||
@protocol WXApmProtocol <NSObject> |
||||
|
||||
/**
|
||||
* start record |
||||
* |
||||
* @param instanceId instanceId |
||||
*/ |
||||
@required |
||||
- (void) onStart:(NSString*)instanceId topic:(NSString*)topic; |
||||
|
||||
/**
|
||||
* pause apm record (apm ext mem / fps) |
||||
*/ |
||||
@required |
||||
- (void) pauseApmRecord; |
||||
|
||||
/**
|
||||
* resume apm record (apm ext mem / fps) |
||||
*/ |
||||
@required |
||||
- (void) resumeApmRecord; |
||||
|
||||
/**
|
||||
* end record |
||||
*/ |
||||
@required |
||||
- (void) onEnd; |
||||
|
||||
/**
|
||||
* record event |
||||
*/ |
||||
@required |
||||
- (void) onEvent:(NSString *)name withValue:(id)value;
|
||||
|
||||
/**
|
||||
* record stage |
||||
*/ |
||||
@required |
||||
- (void) onStage:(NSString *)name withValue:(long)timestamp; |
||||
|
||||
/**
|
||||
* record property |
||||
*/ |
||||
@required |
||||
- (void) addProperty:(NSString *)name withValue:(id)value; |
||||
|
||||
/**
|
||||
* record statistic |
||||
*/ |
||||
@required |
||||
- (void) addStatistic:(NSString *)name withValue:(double)value; |
||||
|
||||
@required |
||||
- (void) onSubProcedureBegin:(NSString*)subProcedureName; |
||||
|
||||
@required |
||||
- (void) onSubProcedureEndSucceed:(NSString*)subProcedureName; |
||||
|
||||
@required |
||||
- (void) onSubProcedureEndFailed:(NSString*)subProcedureName; |
||||
|
||||
/**
|
||||
* record biz properties |
||||
*/ |
||||
@required |
||||
- (void) addBiz:(NSString *)bizID withValue:(NSDictionary *)properties; |
||||
|
||||
/**
|
||||
* record biz stage |
||||
*/ |
||||
@required |
||||
- (void) addBizStage:(NSString *)bizID withValue:(NSDictionary *)stage; |
||||
|
||||
@end |
||||
|
||||
@protocol WXApmGeneratorProtocol <NSObject> |
||||
|
||||
@required |
||||
- (id<WXApmProtocol>)gengratorApmInstance:(NSString *) type; |
||||
@end |
@ -0,0 +1,66 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <Foundation/Foundation.h> |
||||
|
||||
@interface WXAppConfiguration : NSObject |
||||
|
||||
/**
|
||||
* @abstract Group or organization of your app, default value is nil. |
||||
*/ |
||||
+ (NSString *)appGroup; |
||||
+ (void)setAppGroup:(NSString *) appGroup; |
||||
|
||||
/**
|
||||
* @abstract Name of your app, default is value for CFBundleDisplayName in main bundle. |
||||
*/ |
||||
+ (NSString *)appName; |
||||
+ (void)setAppName:(NSString *)appName; |
||||
|
||||
/**
|
||||
* @abstract Version of your app, default is value for CFBundleShortVersionString in main bundle. |
||||
*/ |
||||
+ (NSString *)appVersion; |
||||
+ (void)setAppVersion:(NSString *)appVersion; |
||||
|
||||
/**
|
||||
* @abstract External user agent of your app, all requests sent by weex will set the user agent on header, default value is nil. |
||||
*/ |
||||
+ (NSString *)externalUserAgent; |
||||
+ (void)setExternalUserAgent:(NSString *)userAgent; |
||||
|
||||
/**
|
||||
* @abstract JSFrameworkVersion |
||||
*/ |
||||
+ (NSString *)JSFrameworkVersion; |
||||
+ (void)setJSFrameworkVersion:(NSString *)JSFrameworkVersion; |
||||
|
||||
/**
|
||||
+ * @abstract JSFrameworkLibSize |
||||
+ */ |
||||
+ (NSUInteger)JSFrameworkLibSize; |
||||
+ (void)setJSFrameworkLibSize:(NSUInteger)JSFrameworkLibSize; |
||||
|
||||
/*
|
||||
* @abstract customizeProtocolClasses |
||||
*/ |
||||
+ (NSArray*)customizeProtocolClasses; |
||||
+ (void)setCustomizeProtocolClasses:(NSArray*)customizeProtocolClasses; |
||||
|
||||
@end |
@ -0,0 +1,83 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import "WXModuleProtocol.h" |
||||
|
||||
/** dimenValue */ |
||||
#define BIZTYPE @"bizType" |
||||
#define PAGENAME @"pageName" |
||||
#define WXSDKVERSION @"WXSDKVersion" |
||||
#define JSLIBVERSION @"JSLibVersion" |
||||
#define JSLIBSIZE @"JSLibSize" |
||||
#define WXREQUESTTYPE @"requestType" |
||||
#define WXCONNECTIONTYPE @"connectionType" |
||||
#define NETWORKTYPE @"networkType" |
||||
#define CACHETYPE @"cacheType" |
||||
#define WXCUSTOMMONITORINFO @"customMonitorInfo" |
||||
|
||||
/** measureValue */ |
||||
|
||||
#define SDKINITTIME @"SDKInitTime" |
||||
#define SDKINITINVOKETIME @"SDKInitInvokeTime" |
||||
#define JSLIBINITTIME @"JSLibInitTime" |
||||
#define JSTEMPLATESIZE @"JSTemplateSize" |
||||
#define NETWORKTIME @"networkTime" |
||||
#define COMMUNICATETIME @"communicateTime" |
||||
#define SCREENRENDERTIME @"screenRenderTime" |
||||
#define TOTALTIME @"totalTime" |
||||
#define FIRSETSCREENJSFEXECUTETIME @"firstScreenJSFExecuteTime" |
||||
|
||||
#define CALLCREATEINSTANCETIME @"callCreateInstanceTime" |
||||
#define COMMUNICATETOTALTIME @"communicateTotalTime" |
||||
#define FSRENDERTIME @"fsRenderTime" |
||||
#define COMPONENTCOUNT @"componentCount" |
||||
#define M_COMPONENT_TIME @"componentCreateTime" |
||||
|
||||
#define CACHEPROCESSTIME @"cacheProcessTime" |
||||
#define CACHERATIO @"cacheRatio" |
||||
|
||||
//todo new point
|
||||
#define M_FS_CALL_JS_TIME @"fsCallJsTotalTime" |
||||
#define M_FS_CALL_JS_NUM @"fsCallJsTotalNum" |
||||
#define M_FS_CALL_NATIVE_TIME @"fsCallNativeTotalTime" |
||||
#define M_FS_CALL_NATIVE_NUM @"fsCallNativeTotalNum" |
||||
#define M_FS_CALL_EVENT_NUM @"fsCallEventTotalNum" |
||||
#define M_FS_REQUEST_NET_NUM @"fsRequestNum" |
||||
#define M_CELL_EXCEED_NUM @"cellExceedNum" |
||||
#define M_MAX_DEEP_VDOM @"maxDeepVDomLayer" |
||||
#define M_IMG_WRONG_SIZE_NUM @"imgSizeCount" |
||||
#define M_TIMER_NUM @"timerCount" |
||||
#define M_WRONG_IMG_NUM @"imgSizeCount" |
||||
#define M_INTERACTION_TIME @"interactionTime" |
||||
#define M_INTERACTION_ADD_COUNT @"interactionViewAddCount" |
||||
#define M_INTERACTION_LIMIT_ADD_COUNT @"interactionViewAddLimitCount" |
||||
#define M_NEW_FS_RENDER_TIME @"newFsRenderTime" |
||||
|
||||
|
||||
@protocol WXAppMonitorProtocol <WXModuleProtocol> |
||||
|
||||
- (void)commitAppMonitorArgs:(NSDictionary *)args; |
||||
|
||||
- (void)commitAppMonitorAlarm:(NSString *)pageName monitorPoint:(NSString *)monitorPoint success:(BOOL)success errorCode:(NSString *)errorCode errorMsg:(NSString *)errorMsg arg:(NSString *)arg; |
||||
|
||||
@optional |
||||
|
||||
- (void)commitMonitorWithPage:(NSString *)pageName monitorPoint:(NSString *)monitorPoint args:(NSDictionary *)args; |
||||
|
||||
@end |
@ -0,0 +1,46 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <UIKit/UIKit.h> |
||||
|
||||
/**
|
||||
* The WXBaseViewController class provides the infrastructure for managing the weex view in your app. It is
|
||||
* responsible for creating a weex instance or rendering the weex view, for observing the lifecycle of the |
||||
* view such as "appear" or "disappear"、"foreground" or "background" etc. You can initialize this controller by |
||||
* special bundle URL. |
||||
*/ |
||||
|
||||
@interface WXBaseViewController : UIViewController<UIGestureRecognizerDelegate> |
||||
|
||||
/**
|
||||
* @abstract initializes the viewcontroller with bundle url. |
||||
* |
||||
* @param sourceURL The url of bundle rendered to a weex view. |
||||
* |
||||
* @return a object the class of WXBaseViewController. |
||||
* |
||||
*/ |
||||
- (instancetype)initWithSourceURL:(NSURL *)sourceURL; |
||||
|
||||
/**
|
||||
* @abstract refreshes the weex view in controller. |
||||
*/ |
||||
- (void)refreshWeex; |
||||
|
||||
@end |
@ -0,0 +1,219 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <Foundation/Foundation.h> |
||||
#import <JavaScriptCore/JavaScriptCore.h> |
||||
|
||||
@class WXBridgeMethod; |
||||
@class WXSDKInstance; |
||||
|
||||
#ifdef __cplusplus |
||||
extern "C" { |
||||
#endif |
||||
void WXPerformBlockOnBridgeThread(void (^block)(void)); |
||||
#ifdef __cplusplus |
||||
} |
||||
#endif |
||||
|
||||
@interface WXBridgeManager : NSObject |
||||
|
||||
/**
|
||||
* return instance at the top of the stack. |
||||
**/ |
||||
@property (nonatomic, weak, readonly) WXSDKInstance *topInstance; |
||||
|
||||
/**
|
||||
* Create Instance Method |
||||
* @param instance : instance id |
||||
* @param temp : template data |
||||
* @param options : parameters |
||||
* @param data : external data |
||||
**/ |
||||
- (void)createInstance:(NSString *)instance |
||||
template:(NSString *)temp |
||||
options:(NSDictionary *)options |
||||
data:(id)data; |
||||
|
||||
/**
|
||||
* Create Instance with opcode |
||||
* @param instance : instance id |
||||
* @param contents : opcode data |
||||
* @param options : parameters |
||||
* @param data : external data |
||||
**/ |
||||
- (void)createInstance:(NSString *)instance |
||||
contents:(NSData *)contents |
||||
options:(NSDictionary *)options |
||||
data:(id)data; |
||||
|
||||
/**
|
||||
* @abstract return currentInstanceId |
||||
**/ |
||||
- (NSArray *)getInstanceIdStack; |
||||
|
||||
/**
|
||||
* Destroy Instance Method |
||||
* @param instance : instance id |
||||
**/ |
||||
- (void)destroyInstance:(NSString *)instance; |
||||
|
||||
/**
|
||||
* Trigger full GC, for dev and debug only. |
||||
**/ |
||||
- (void)forceGarbageCollection; |
||||
|
||||
/**
|
||||
* Refresh Instance Method |
||||
* @param instance : instance id |
||||
* @param data : external data |
||||
**/ |
||||
- (void)refreshInstance:(NSString *)instance data:(id)data; |
||||
|
||||
/**
|
||||
* Unload |
||||
**/ |
||||
- (void)unload; |
||||
|
||||
/**
|
||||
* Update Instance State Method |
||||
* @param instance : instance id |
||||
* @param data : parameters |
||||
**/ |
||||
- (void)updateState:(NSString *)instance data:(id)data; |
||||
|
||||
/**
|
||||
* Execute JSFramework Script |
||||
* @param script : script code |
||||
**/ |
||||
- (void)executeJsFramework:(NSString *)script; |
||||
|
||||
/**
|
||||
* Register JS service Script |
||||
* @param name : service name |
||||
* @param serviceScript : script code |
||||
* @param options : service options |
||||
* @param completion : completion callback |
||||
**/ |
||||
- (void)registerService:(NSString *)name withService:(NSString *)serviceScript withOptions:(NSDictionary *)options completion:(void(^)(BOOL result))completion; |
||||
|
||||
|
||||
/**
|
||||
* Register JS service Script |
||||
* @param name : service name |
||||
* @param serviceScriptUrl : script url |
||||
* @param options : service options |
||||
* @param completion : completion callback |
||||
**/ |
||||
-(void)registerService:(NSString *)name withServiceUrl:(NSURL *)serviceScriptUrl withOptions:(NSDictionary *)options completion:(void(^)(BOOL result))completion; |
||||
|
||||
/**
|
||||
* Unregister JS service Script |
||||
* @param name : script code |
||||
**/ |
||||
- (void)unregisterService:(NSString *)name; |
||||
|
||||
/**
|
||||
* Register Modules Method |
||||
* @param modules : module list |
||||
**/ |
||||
- (void)registerModules:(NSDictionary *)modules; |
||||
|
||||
/**
|
||||
* Register Components Method |
||||
* @param components component list |
||||
**/ |
||||
- (void)registerComponents:(NSArray* )components; |
||||
|
||||
/**
|
||||
* FireEvent |
||||
* @param instanceId instance id |
||||
* @param ref : node reference |
||||
* @param type : event type |
||||
* @param params : parameters in event object |
||||
* @param domChanges dom value changes, used for two-way data binding |
||||
**/ |
||||
- (void)fireEvent:(NSString *)instanceId ref:(NSString *)ref type:(NSString *)type params:(NSDictionary *)params domChanges:(NSDictionary *)domChanges; |
||||
|
||||
/**
|
||||
* FireEvent |
||||
* @param instanceId instance id |
||||
* @param ref : node reference |
||||
* @param type : event type |
||||
* @param params : parameters in event object |
||||
* @param domChanges dom value changes, used for two-way data binding |
||||
* @param handlerArguments : arguments passed to event handler |
||||
**/ |
||||
- (void)fireEvent:(NSString *)instanceId ref:(NSString *)ref type:(NSString *)type params:(NSDictionary *)params domChanges:(NSDictionary *)domChanges handlerArguments:(NSArray *)handlerArguments; |
||||
|
||||
- (JSValue *)fireEventWithResult:(NSString *)instanceId ref:(NSString *)ref type:(NSString *)type params:(NSDictionary *)params domChanges:(NSDictionary *)domChanges; |
||||
|
||||
/**
|
||||
* componentHook |
||||
* @param instanceId : instance id |
||||
* @param componentId : compoent id |
||||
* @param type : component hook Type, such as life-cycle |
||||
* @param hookPhase : hook phase |
||||
*/ |
||||
- (void)callComponentHook:(NSString*)instanceId componentId:(NSString*)componentId type:(NSString*)type hook:(NSString*)hookPhase args:(NSArray*)args competion:(void (^)(JSValue * value))complection; |
||||
/**
|
||||
* callBack |
||||
* |
||||
* @param instanceId instanceId |
||||
* @param funcId funcId |
||||
* @param params params |
||||
* @param keepAlive indicate that whether this func will be reused |
||||
*/ |
||||
- (void)callBack:(NSString *)instanceId funcId:(NSString *)funcId params:(id)params keepAlive:(BOOL)keepAlive; |
||||
|
||||
/**
|
||||
* Connect To WebSocket for devtool debug |
||||
* @param url : url to connect |
||||
**/ |
||||
- (void)connectToDevToolWithUrl:(NSURL *)url; |
||||
|
||||
/**
|
||||
* CallBack |
||||
* @param instanceId instance id |
||||
* @param funcId : callback id |
||||
* @param params : parameters |
||||
**/ |
||||
- (void)callBack:(NSString *)instanceId funcId:(NSString *)funcId params:(id)params; |
||||
|
||||
/**
|
||||
* Connect To WebSocket for collecting log |
||||
* @param url : url to connect |
||||
**/ |
||||
- (void)connectToWebSocket:(NSURL *)url; |
||||
|
||||
/**
|
||||
* Log To WebSocket |
||||
* @param flag : the tag to identify |
||||
* @param message : message to output |
||||
**/ |
||||
- (void)logToWebSocket:(NSString *)flag message:(NSString *)message; |
||||
|
||||
/**
|
||||
* Reset Environment |
||||
**/ |
||||
- (void)resetEnvironment; |
||||
|
||||
- (void)fireEvent:(NSString *)instanceId ref:(NSString *)ref type:(NSString *)type params:(NSDictionary *)params DEPRECATED_MSG_ATTRIBUTE("Use fireEvent:ref:type:params:domChanges: method instead."); |
||||
- (void)executeJsMethod:(WXBridgeMethod *)method DEPRECATED_MSG_ATTRIBUTE(); |
||||
|
||||
@end |
@ -0,0 +1,172 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <JavaScriptCore/JavaScriptCore.h> |
||||
|
||||
typedef NSInteger(^WXJSCallNative)(NSString *instance, NSArray *tasks, NSString *callback); |
||||
typedef NSInteger(^WXJSCallAddElement)(NSString *instanceId, NSString *parentRef, NSDictionary *elementData, NSInteger index); |
||||
typedef NSInteger(^WXJSCallCreateBody)(NSString *instanceId, NSDictionary *bodyData); |
||||
typedef NSInteger(^WXJSCallRemoveElement)(NSString *instanceId,NSString *ref); |
||||
typedef NSInteger(^WXJSCallMoveElement)(NSString *instanceId,NSString *ref,NSString *parentRef,NSInteger index); |
||||
typedef NSInteger(^WXJSCallUpdateAttrs)(NSString *instanceId,NSString *ref,NSDictionary *attrsData); |
||||
typedef NSInteger(^WXJSCallUpdateStyle)(NSString *instanceId,NSString *ref,NSDictionary *stylesData); |
||||
typedef NSInteger(^WXJSCallAddEvent)(NSString *instanceId,NSString *ref,NSString *event); |
||||
typedef NSInteger(^WXJSCallRemoveEvent)(NSString *instanceId,NSString *ref,NSString *event); |
||||
typedef NSInteger(^WXJSCallCreateFinish)(NSString *instanceId); |
||||
typedef NSInteger(^WXJSCallRefreshFinish)(NSString *instanceId); |
||||
typedef NSInteger(^WXJSCallUpdateFinish)(NSString *instanceId); |
||||
typedef NSInvocation *(^WXJSCallNativeModule)(NSString *instanceId, NSString *moduleName, NSString *methodName, NSArray *args, NSDictionary *options); |
||||
typedef void (^WXJSCallNativeComponent)(NSString *instanceId, NSString *componentRef, NSString *methodName, NSArray *args, NSDictionary *options); |
||||
|
||||
@protocol WXBridgeProtocol <NSObject> |
||||
|
||||
@property (nonatomic, readonly) JSValue* exception; |
||||
|
||||
/**
|
||||
* Executes the js framework code in javascript engine |
||||
* You can do some setup in this method |
||||
*/ |
||||
- (void)executeJSFramework:(NSString *)frameworkScript; |
||||
|
||||
/**
|
||||
* Executes the js code in javascript engine |
||||
* You can do some setup in this method |
||||
*/ |
||||
- (void)executeJavascript:(NSString *)script; |
||||
|
||||
/**
|
||||
* Executes global js method with specific arguments |
||||
*/ |
||||
- (JSValue *)callJSMethod:(NSString *)method args:(NSArray*)args; |
||||
|
||||
/**
|
||||
* Reset js engine environment, called when any environment variable is changed. |
||||
*/ |
||||
- (void)resetEnvironment; |
||||
|
||||
@optional |
||||
|
||||
/**
|
||||
* Remove instance's timer. |
||||
*/ |
||||
-(void)removeTimers:(NSString *)instance; |
||||
|
||||
/**
|
||||
* Called when garbage collection is wanted by sdk. |
||||
*/ |
||||
- (void)garbageCollect; |
||||
|
||||
@required |
||||
|
||||
/**
|
||||
* Register callback when call native tasks occur |
||||
*/ |
||||
- (void)registerCallNative:(WXJSCallNative)callNative; |
||||
|
||||
/**
|
||||
* Register callback when addElement tasks occur |
||||
*/ |
||||
- (void)registerCallAddElement:(WXJSCallAddElement)callAddElement; |
||||
|
||||
/**
|
||||
* Register callback when createBody tasks occur |
||||
*/ |
||||
- (void)registerCallCreateBody:(WXJSCallCreateBody)callCreateBody; |
||||
|
||||
/**
|
||||
* Register callback when removeElement tasks occur |
||||
*/ |
||||
- (void)registerCallRemoveElement:(WXJSCallRemoveElement)callRemoveElement; |
||||
|
||||
/**
|
||||
* Register callback when removeElement tasks occur |
||||
*/ |
||||
- (void)registerCallMoveElement:(WXJSCallMoveElement)callMoveElement; |
||||
|
||||
/**
|
||||
* Register callback when updateAttrs tasks occur |
||||
*/ |
||||
- (void)registerCallUpdateAttrs:(WXJSCallUpdateAttrs)callUpdateAttrs; |
||||
|
||||
/**
|
||||
* Register callback when updateStyle tasks occur |
||||
*/ |
||||
- (void)registerCallUpdateStyle:(WXJSCallUpdateStyle)callUpdateStyle; |
||||
|
||||
/**
|
||||
* Register callback when addEvent tasks occur |
||||
*/ |
||||
- (void)registerCallAddEvent:(WXJSCallAddEvent)callAddEvent; |
||||
|
||||
/**
|
||||
* Register callback when removeEvent tasks occur |
||||
*/ |
||||
- (void)registerCallRemoveEvent:(WXJSCallRemoveEvent)callRemoveEvent; |
||||
|
||||
/**
|
||||
* Register callback when createFinish tasks occur |
||||
*/ |
||||
- (void)registerCallCreateFinish:(WXJSCallCreateFinish)callCreateFinish; |
||||
|
||||
/**
|
||||
* Register callback for global js function `callNativeModule` |
||||
*/ |
||||
- (void)registerCallNativeModule:(WXJSCallNativeModule)callNativeModuleBlock; |
||||
|
||||
/**
|
||||
* Register callback for global js function `callNativeComponent` |
||||
*/ |
||||
- (void)registerCallNativeComponent:(WXJSCallNativeComponent)callNativeComponentBlock; |
||||
|
||||
@optional |
||||
|
||||
/**
|
||||
* Register callback when refreshFinish tasks occur |
||||
*/ |
||||
- (void)registerCallRefreshFinish:(WXJSCallRefreshFinish)callRefreshFinish; |
||||
|
||||
/**
|
||||
* Register callback when updateFinish tasks occur |
||||
*/ |
||||
- (void)registerCallUpdateFinish:(WXJSCallUpdateFinish)callUpdateFinish; |
||||
|
||||
/*
|
||||
* Executes the specified JavaScript code, treating the specified URL as its source location. |
||||
* Evaluating a script runs any top-level code and adds function or object definitions to the brige’s global object. |
||||
* The sourceURL parameter is informative only; debuggers may use this URL when reporting exceptions. |
||||
@param script The JavaScript source code to evaluate. |
||||
@param sourceURL A URL to be considered as the script’s origin. |
||||
@return ReturnsThe last value generated by the script. Note that a script can result in the JavaScript value undefined. |
||||
*/ |
||||
- (JSValue *)executeJavascript:(NSString *)script withSourceURL:(NSURL*)sourceURL; |
||||
|
||||
|
||||
@property (nonatomic, strong) NSString* weexInstanceId; |
||||
|
||||
/**
|
||||
set JavaScriptContext |
||||
*/ |
||||
- (void)setJSContext:(JSContext*)context; |
||||
|
||||
/*
|
||||
* javaScript runtime context |
||||
*/ |
||||
- (JSContext*)javaScriptContext; |
||||
|
||||
@end |
@ -0,0 +1,162 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import "WXComponent.h" |
||||
#import "WXSDKInstance.h" |
||||
#import "WXUtility.h" |
||||
|
||||
#define FlexUndefined NAN |
||||
|
||||
#ifdef __cplusplus |
||||
#include "layout.h" |
||||
|
||||
typedef WeexCore::WXCoreFlexDirection WXCoreFlexDirection; |
||||
typedef WeexCore::WXCoreFlexWrap WXCoreFlexWrap; |
||||
typedef WeexCore::WXCoreJustifyContent WXCoreJustifyContent; |
||||
typedef WeexCore::WXCoreAlignItems WXCoreAlignItems; |
||||
typedef WeexCore::WXCoreAlignSelf WXCoreAlignSelf; |
||||
typedef WeexCore::WXCorePositionType WXCorePositionType; |
||||
typedef WeexCore::WXCoreDirection WXCoreDirection; |
||||
|
||||
extern "C" { |
||||
#endif |
||||
bool flexIsUndefined(float value); |
||||
#ifdef __cplusplus |
||||
} |
||||
#endif |
||||
|
||||
#ifndef __cplusplus |
||||
// Ensure that .m files can use css style enum definitions.
|
||||
#include "flex_enum.h" |
||||
|
||||
typedef enum WXCoreFlexDirection WXCoreFlexDirection; |
||||
typedef enum WXCoreFlexWrap WXCoreFlexWrap; |
||||
typedef enum WXCoreJustifyContent WXCoreJustifyContent; |
||||
typedef enum WXCoreAlignItems WXCoreAlignItems; |
||||
typedef enum WXCoreAlignSelf WXCoreAlignSelf; |
||||
typedef enum WXCorePositionType WXCorePositionType; |
||||
typedef enum WXCoreDirection WXCoreDirection; |
||||
|
||||
#endif |
||||
|
||||
@interface WXComponent () |
||||
{ |
||||
@package |
||||
#ifdef __cplusplus |
||||
WeexCore::WXCoreLayoutNode *_flexCssNode; |
||||
#endif // __cplusplus
|
||||
|
||||
CGRect _calculatedFrame; |
||||
CGPoint _absolutePosition; |
||||
WXPositionType _positionType; |
||||
BOOL _isLastLayoutDirectionRTL; |
||||
BOOL _isLayoutDirectionRTL; |
||||
} |
||||
|
||||
/**
|
||||
* @abstract Return the css node used to layout. |
||||
* |
||||
* @warning Subclasses must not override this. |
||||
*/ |
||||
#ifdef __cplusplus |
||||
@property (nonatomic, readonly, assign) WeexCore::WXCoreLayoutNode *flexCssNode; |
||||
#endif |
||||
|
||||
/**
|
||||
* @abstract Get css style value for key. The key should be of CSS standard form. |
||||
* This method is for convenience use in C/ObjC environment. And if you want to |
||||
* retrieve all style values or in C++, you could use flexCssNode directly. |
||||
* |
||||
* Thread usage: |
||||
* This method should be invoked in component thread by WXPerformBlockOnComponentThread. |
||||
* Note that all initWithRef methods of WXComponent and its subclasses are performed in |
||||
* component thread by default. Therefore you can call this method directly in initWithRef. |
||||
* |
||||
* Supported keys: |
||||
* width, height, min-width, min-height, max-width, max-height, |
||||
* margin-(left/right/top/bottom) |
||||
* padding-(left/right/top/bottom) |
||||
* border-(left/right/top/bottom)-width |
||||
* left, right, top, bottom |
||||
* flex-grow |
||||
*/ |
||||
- (float)getCssStyleValueForKey:(NSString *)key; |
||||
|
||||
/**
|
||||
* @abstract Get css style flex-direction. Thread usage the same as getCssStyleValueForKey. |
||||
*/ |
||||
- (WXCoreFlexDirection)getCssStyleFlexDirection; |
||||
|
||||
/**
|
||||
* @abstract Get css style flex-wrap. Thread usage the same as getCssStyleValueForKey. |
||||
*/ |
||||
- (WXCoreFlexWrap)getCssStyleFlexWrap; |
||||
|
||||
/**
|
||||
* @abstract Get css style justify-content. Thread usage the same as getCssStyleValueForKey. |
||||
*/ |
||||
- (WXCoreJustifyContent)getCssStyleJustifyContent; |
||||
|
||||
/**
|
||||
* @abstract Get css style align-items. Thread usage the same as getCssStyleValueForKey. |
||||
*/ |
||||
- (WXCoreAlignItems)getCssStyleAlignItems; |
||||
|
||||
/**
|
||||
* @abstract Get css style align-self. Thread usage the same as getCssStyleValueForKey. |
||||
*/ |
||||
- (WXCoreAlignSelf)getCssStyleAlignSelf; |
||||
|
||||
/**
|
||||
* @abstract Get css style position. Thread usage the same as getCssStyleValueForKey. |
||||
*/ |
||||
- (WXCorePositionType)getCssStylePositionType; |
||||
|
||||
/**
|
||||
* @abstract Get css layout direction. Thread usage the same as getCssStyleValueForKey. |
||||
*/ |
||||
- (WXCoreDirection)getCssDirection; |
||||
|
||||
/**
|
||||
* @abstract Convert layout dimension value like 'left', 'width' to style value in js considering viewport and scale. |
||||
*/ |
||||
- (NSString*)convertLayoutValueToStyleValue:(NSString*)valueName; |
||||
|
||||
/**
|
||||
* @abstract Get style width of a container(scroller like) with safe value. No NAN, No zero. |
||||
*/ |
||||
- (CGFloat)safeContainerStyleWidth; |
||||
|
||||
/**
|
||||
* @abstract Delete css node of a subcomponent. |
||||
*/ |
||||
- (void)removeSubcomponentCssNode:(WXComponent *)subcomponent; |
||||
|
||||
#pragma mark - RTL |
||||
|
||||
@property (nonatomic, assign, readonly) BOOL isDirectionRTL; |
||||
|
||||
// Now we scrollView RTL solution is tranform
|
||||
// so scrollView need tranform subviews when RTL by default
|
||||
// if your component view is not scrollView but also implement RTL layout by tranform,you need return YES
|
||||
- (BOOL)shouldTransformSubviewsWhenRTL; |
||||
|
||||
- (void)layoutDirectionDidChanged:(BOOL)isRTL; |
||||
|
||||
@end |
@ -0,0 +1,279 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <CoreGraphics/CoreGraphics.h> |
||||
#import <Foundation/Foundation.h> |
||||
#import "WXDisplayLinkManager.h" |
||||
|
||||
@class WXBridgeMethod; |
||||
@class WXSDKInstance; |
||||
@class WXComponent; |
||||
|
||||
#ifdef __cplusplus |
||||
extern "C" { |
||||
#endif |
||||
|
||||
void WXPerformBlockOnComponentThread(void (^block)(void)); |
||||
void WXPerformBlockSyncOnComponentThread(void (^block)(void)); |
||||
|
||||
#ifdef __cplusplus |
||||
} |
||||
#endif |
||||
|
||||
@interface WXComponentManager : NSObject <WXDisplayLinkClient> |
||||
|
||||
@property (nonatomic, readonly, weak) WXSDKInstance *weexInstance; |
||||
@property (nonatomic, readonly, assign) BOOL isValid; |
||||
|
||||
/**
|
||||
* @abstract initialize with weex instance |
||||
**/ |
||||
- (instancetype)initWithWeexInstance:(WXSDKInstance *)weexInstance; |
||||
|
||||
/**
|
||||
* @abstract return the component thread |
||||
**/ |
||||
+ (NSThread *)componentThread; |
||||
|
||||
/**
|
||||
* @abstract starting component tasks |
||||
**/ |
||||
- (void)startComponentTasks; |
||||
|
||||
/**
|
||||
* @abstract tell the component manager that instance root view's frame has been changed |
||||
**/ |
||||
- (void)rootViewFrameDidChange:(CGRect)frame; |
||||
|
||||
///--------------------------------------
|
||||
/// @name Component Tree Building
|
||||
///--------------------------------------
|
||||
|
||||
/**
|
||||
* @abstract create root component |
||||
**/ |
||||
- (void)createBody:(NSString*)ref |
||||
type:(NSString*)type |
||||
styles:(NSDictionary*)styles |
||||
attributes:(NSDictionary*)attributes |
||||
events:(NSArray*)events |
||||
renderObject:(void*)renderObject; |
||||
|
||||
/**
|
||||
* @abstract add a component to its parent |
||||
**/ |
||||
- (void)addComponent:(NSString*)ref |
||||
type:(NSString*)type |
||||
parentRef:(NSString*)parentRef |
||||
styles:(NSDictionary*)styles |
||||
attributes:(NSDictionary*)attributes |
||||
events:(NSArray*)events |
||||
index:(NSInteger)index |
||||
renderObject:(void*)renderObject; |
||||
|
||||
/**
|
||||
* @abstract move component |
||||
**/ |
||||
- (void)moveComponent:(NSString *)ref toSuper:(NSString *)superRef atIndex:(NSInteger)index; |
||||
|
||||
/**
|
||||
* @abstract remove component |
||||
**/ |
||||
- (void)removeComponent:(NSString *)ref; |
||||
|
||||
/**
|
||||
* @abstract notify that a component tree is built and trigger layout, |
||||
may be called several times rendering a page. |
||||
**/ |
||||
- (void)appendTreeCreateFinish:(NSString*)ref; |
||||
|
||||
/**
|
||||
* @abstract return component for specific ref, must be called on component thread by calling WXPerformBlockOnComponentThread |
||||
*/ |
||||
- (WXComponent *)componentForRef:(NSString *)ref; |
||||
|
||||
/**
|
||||
* @abstract return root component |
||||
*/ |
||||
- (WXComponent *)componentForRoot; |
||||
|
||||
/**
|
||||
* @abstract number of components created, must be called on component thread by calling WXPerformBlockOnComponentThread |
||||
*/ |
||||
- (NSUInteger)numberOfComponents; |
||||
|
||||
/**
|
||||
* @abstract add an existing component to references look-up map |
||||
*/ |
||||
- (void)addComponent:(WXComponent *)component toIndexDictForRef:(NSString *)ref; |
||||
|
||||
///--------------------------------------
|
||||
/// @name Updating
|
||||
///--------------------------------------
|
||||
|
||||
/**
|
||||
* @abstract update styles |
||||
**/ |
||||
- (void)updateStyles:(NSDictionary *)styles forComponent:(NSString *)ref; |
||||
|
||||
/**
|
||||
* @abstract update pseudo class styles |
||||
**/ |
||||
- (void)updatePseudoClassStyles:(NSDictionary *)styles forComponent:(NSString *)ref; |
||||
|
||||
/**
|
||||
* @abstract update attributes |
||||
**/ |
||||
- (void)updateAttributes:(NSDictionary *)attributes forComponent:(NSString *)ref; |
||||
|
||||
/**
|
||||
* @abstract quick check that if a component has non transition properties |
||||
**/ |
||||
- (BOOL)isTransitionNoneOfComponent:(NSString*)ref; // for quick access
|
||||
|
||||
/**
|
||||
* @abstract check if component with @ref has any style in @styles which is animated |
||||
**/ |
||||
- (BOOL)hasTransitionPropertyInStyles:(NSDictionary*)styles forComponent:(NSString*)ref; |
||||
|
||||
/**
|
||||
* @abstract layout a component with frame output by weex core layout engine |
||||
**/ |
||||
- (void)layoutComponent:(WXComponent*)component frame:(CGRect)frame isRTL:(BOOL)isRTL innerMainSize:(CGFloat)innerMainSize; |
||||
|
||||
/**
|
||||
* @abstract layout a component on platform side |
||||
**/ |
||||
- (void)layoutComponent:(WXComponent*)component; |
||||
|
||||
/**
|
||||
* @abstract add event |
||||
**/ |
||||
- (void)addEvent:(NSString *)event toComponent:(NSString *)ref; |
||||
|
||||
/**
|
||||
* @abstract remove event |
||||
**/ |
||||
- (void)removeEvent:(NSString *)event fromComponent:(NSString *)ref; |
||||
|
||||
/**
|
||||
* @abstract scroll to specific component |
||||
**/ |
||||
- (void)scrollToComponent:(NSString *)ref options:(NSDictionary *)options; |
||||
|
||||
///--------------------------------------
|
||||
/// @name Life Cycle
|
||||
///--------------------------------------
|
||||
|
||||
/**
|
||||
* @abstract called when all doms are created |
||||
**/ |
||||
- (void)createFinish; |
||||
|
||||
/**
|
||||
* @abstract called when all doms are refreshed |
||||
**/ |
||||
- (void)refreshFinish; |
||||
|
||||
/**
|
||||
* @abstract called when all doms are updated |
||||
**/ |
||||
- (void)updateFinish; |
||||
|
||||
/**
|
||||
* @abstract called when all doms are created and layout finished |
||||
**/ |
||||
- (void)renderFinish; |
||||
|
||||
/**
|
||||
* @abstract called when render failed |
||||
**/ |
||||
- (void)renderFailed:(NSError *)error; |
||||
|
||||
/**
|
||||
* @abstract unload |
||||
**/ |
||||
- (void)unload; |
||||
|
||||
/**
|
||||
* @abstract invalidate component management, this can be called on main thread. |
||||
**/ |
||||
- (void)invalidate; |
||||
|
||||
///--------------------------------------
|
||||
/// @name Fixed
|
||||
///--------------------------------------
|
||||
|
||||
/**
|
||||
* @abstract add a component which has a fixed position |
||||
* |
||||
* @param fixComponent the fixed component to add |
||||
*/ |
||||
- (void)addFixedComponent:(WXComponent *)fixComponent; |
||||
|
||||
/**
|
||||
* @abstract remove a component which has a fixed position |
||||
* |
||||
* @param fixComponent the fixed component to remove |
||||
*/ |
||||
- (void)removeFixedComponent:(WXComponent *)fixComponent; |
||||
|
||||
/**
|
||||
* @abstract add a task to UI thread |
||||
**/ |
||||
- (void)_addUITask:(void (^)(void))block; |
||||
|
||||
/**
|
||||
* @abstract execute a task to UI thread |
||||
**/ |
||||
- (void)executePrerenderUITask:(NSString *)url; |
||||
|
||||
/**
|
||||
* @param styles a NSDictionary value, styles which will resolve |
||||
* @param component a WXComponent value, the target which you want to resolve |
||||
* @param isUpdateStyles a BOOL value, YES will udpate the component style property, NO will notifiy the lifeStyle of compoenent to handle, default value is NO. |
||||
* @abstract handleStyle will be add to a queue to be executed every frame, but handleStyleOnMainThread will switch to main thread and execute imediately, you can call this for your execution time sequence. |
||||
*/ |
||||
- (void)handleStyleOnMainThread:(NSDictionary*)styles forComponent:(WXComponent *)component isUpdateStyles:(BOOL)isUpdateStyles; |
||||
|
||||
///--------------------------------------
|
||||
/// @name Enumerating
|
||||
///--------------------------------------
|
||||
|
||||
/**
|
||||
* Enumerate components using breadth-first search algorithm, |
||||
must be called on component thread by calling WXPerformBlockOnComponentThread |
||||
*/ |
||||
- (void)enumerateComponentsUsingBlock:(void (^)(WXComponent *, BOOL *stop))block; |
||||
|
||||
#pragma mark batch mark |
||||
|
||||
/**
|
||||
a start native batch tag for a group of UI operations, company with performBatchEnd |
||||
@see performBatchEnd |
||||
*/ |
||||
- (void)performBatchBegin; |
||||
|
||||
/**
|
||||
an end native batch tag for a group of UI operations, company with performBatchBegin |
||||
@see performBatchBegin |
||||
*/ |
||||
- (void)performBatchEnd; |
||||
|
||||
@end |
@ -0,0 +1,39 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
@protocol WXConfigCenterProtocol <NSObject> |
||||
|
||||
/**
|
||||
get config from config center handler |
||||
@param key the key for config |
||||
@param defaultValue default value for key if the key does not exist. |
||||
@param isDefault whether the value is default value |
||||
@return the value for config key |
||||
*/ |
||||
- (id)configForKey:(NSString*)key defaultValue:(id)defaultValue isDefault:(BOOL*)isDefault; |
||||
|
||||
@optional |
||||
/**
|
||||
get group config from config center handler |
||||
@param group the groupName for config |
||||
*/ |
||||
|
||||
- (id)configForGroup:(NSString*)group; |
||||
|
||||
@end |
@ -0,0 +1,104 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <UIKit/UIKit.h> |
||||
#import <objc/runtime.h> |
||||
#import "WXType.h" |
||||
|
||||
@class WXLength; |
||||
@class WXBoxShadow; |
||||
@interface WXConvert : NSObject |
||||
|
||||
+ (BOOL)BOOL:(id)value; |
||||
|
||||
/**
|
||||
* @abstract convert value to CGFloat value |
||||
* @param value value |
||||
* @return CGFloat value |
||||
*/ |
||||
+ (CGFloat)CGFloat:(id)value; |
||||
|
||||
/**
|
||||
* @abstract convert value to CGFloat value, notice that it will return nan if input value is unsupported |
||||
* @param value value |
||||
* @return CGFloat value or nan(unsupported input) |
||||
*/ |
||||
+ (CGFloat)flexCGFloat:(id)value; |
||||
|
||||
+ (NSUInteger)NSUInteger:(id)value; |
||||
+ (NSInteger)NSInteger:(id)value; |
||||
+ (NSString *)NSString:(id)value; |
||||
|
||||
/**
|
||||
* 750px Adaptive |
||||
*/ |
||||
typedef CGFloat WXPixelType; |
||||
// @parameter scaleFactor: please use weexInstance's pixelScaleFactor property
|
||||
+ (WXPixelType)WXPixelType:(id)value scaleFactor:(CGFloat)scaleFactor; |
||||
// WXPixelType that use flexCGFloat to convert
|
||||
+ (WXPixelType)WXFlexPixelType:(id)value scaleFactor:(CGFloat)scaleFactor; |
||||
|
||||
|
||||
+ (UIViewContentMode)UIViewContentMode:(id)value; |
||||
+ (WXImageQuality)WXImageQuality:(id)value; |
||||
+ (WXImageSharp)WXImageSharp:(id)value; |
||||
+ (UIAccessibilityTraits)WXUIAccessibilityTraits:(id)value; |
||||
|
||||
+ (UIColor *)UIColor:(id)value; |
||||
+ (CGColorRef)CGColor:(id)value; |
||||
+ (NSString *)HexWithColor:(UIColor *)color; |
||||
+ (WXBorderStyle)WXBorderStyle:(id)value; |
||||
typedef BOOL WXClipType; |
||||
+ (WXClipType)WXClipType:(id)value; |
||||
+ (WXPositionType)WXPositionType:(id)value; |
||||
|
||||
+ (WXTextStyle)WXTextStyle:(id)value; |
||||
/**
|
||||
* @abstract UIFontWeightRegular ,UIFontWeightBold,etc are not support by the system which is less than 8.2. weex sdk set the float value. |
||||
* |
||||
* @param value support normal,blod,100,200,300,400,500,600,700,800,900 |
||||
* |
||||
* @return A float value. |
||||
* |
||||
*/ |
||||
+ (CGFloat)WXTextWeight:(id)value; |
||||
+ (WXTextDecoration)WXTextDecoration:(id)value; |
||||
+ (NSTextAlignment)NSTextAlignment:(id)value; |
||||
+ (UIReturnKeyType)UIReturnKeyType:(id)value; |
||||
|
||||
+ (WXScrollDirection)WXScrollDirection:(id)value; |
||||
+ (UITableViewRowAnimation)UITableViewRowAnimation:(id)value; |
||||
|
||||
+ (UIViewAnimationOptions)UIViewAnimationTimingFunction:(id)value; |
||||
+ (CAMediaTimingFunction *)CAMediaTimingFunction:(id)value; |
||||
|
||||
+ (WXVisibility)WXVisibility:(id)value; |
||||
|
||||
+ (WXGradientType)gradientType:(id)value; |
||||
|
||||
+ (WXLength *)WXLength:(id)value isFloat:(BOOL)isFloat scaleFactor:(CGFloat)scaleFactor; |
||||
+ (WXBoxShadow *)WXBoxShadow:(id)value scaleFactor:(CGFloat)scaleFactor; |
||||
|
||||
@end |
||||
|
||||
@interface WXConvert (Deprecated) |
||||
|
||||
+ (WXPixelType)WXPixelType:(id)value DEPRECATED_MSG_ATTRIBUTE("Use [WXConvert WXPixelType:scaleFactor:] instead"); |
||||
|
||||
@end |
@ -0,0 +1,55 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <Foundation/Foundation.h> |
||||
#import "WXModuleProtocol.h" |
||||
|
||||
@interface WXDebugTool : NSObject<WXModuleProtocol> |
||||
|
||||
+ (instancetype)sharedInstance; |
||||
|
||||
//+ (void)showFPS;
|
||||
|
||||
+ (void)setDebug:(BOOL)isDebug; |
||||
|
||||
+ (BOOL)isDebug; |
||||
|
||||
+ (void)setDevToolDebug:(BOOL)isDevToolDebug; |
||||
|
||||
+ (BOOL)isDevToolDebug; |
||||
|
||||
+ (void)setReplacedBundleJS:(NSURL*)url; |
||||
|
||||
+ (NSString*)getReplacedBundleJS; |
||||
|
||||
+ (void)setReplacedJSFramework:(NSURL*)url; |
||||
|
||||
+ (NSString*)getReplacedJSFramework; |
||||
|
||||
+ (BOOL) cacheJsService: (NSString *)name withScript: (NSString *)script withOptions: (NSDictionary *) options; |
||||
|
||||
+ (BOOL) removeCacheJsService: (NSString *)name; |
||||
|
||||
+ (NSDictionary *) jsServiceCache; |
||||
|
||||
+ (BOOL)isRemoteTracing; |
||||
|
||||
+ (void)setRemoteTracing:(BOOL)isRemoteTracing; |
||||
|
||||
@end |
@ -0,0 +1,193 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#ifndef __WX_DEFINE_H__ |
||||
#define __WX_DEFINE_H__ |
||||
|
||||
#define WX_SDK_VERSION @"0.20.0" |
||||
|
||||
#if defined(__cplusplus) |
||||
#define WX_EXTERN extern "C" __attribute__((visibility("default"))) |
||||
#else |
||||
#define WX_EXTERN extern __attribute__((visibility("default"))) |
||||
#endif |
||||
|
||||
/*
|
||||
* Concatenate preprocessor tokens a and b without expanding macro definitions |
||||
* (however, if invoked from a macro, macro arguments are expanded). |
||||
*/ |
||||
#define WX_CONCAT(a, b) a ## b |
||||
/*
|
||||
* Concatenate preprocessor tokens a and b after macro-expanding them. |
||||
*/ |
||||
#define WX_CONCAT_WRAPPER(a, b) WX_CONCAT(a, b) |
||||
|
||||
#define WX_CONCAT_TRIPLE(a, b, c) a ## b ## c |
||||
|
||||
#define WX_NSSTRING_HELPER(x) #x |
||||
#define WX_NSSTRING(x) @WX_NSSTRING_HELPER(x) |
||||
|
||||
#define WX_SDK_ROOT_REF @"_root" |
||||
|
||||
#define WX_TEXT_FONT_SIZE (32.0 * self.weexInstance.pixelScaleFactor) |
||||
|
||||
#define WX_UPDATE_CONFIG(prefix, name, configs) \ |
||||
NSString *selStr = [NSString stringWithFormat:@"%@_%@", prefix, name];\
|
||||
SEL selector = NSSelectorFromString(selStr);\
|
||||
Class clazz = WX_COMPONENT_CLASS(_properties[@"type"]);\
|
||||
if ([clazz respondsToSelector:selector]) {\
|
||||
configs = ((NSArray *(*)(id, SEL))objc_msgSend)(clazz, selector);\
|
||||
}\
|
||||
|
||||
#define WX_TYPE_KEYPATH(config, name, type, parts, vKey) \ |
||||
type = [config[0] stringByAppendingString:@":"];\
|
||||
NSString *keyPath = config.count > 1 ? config[1] : nil;\
|
||||
if(keyPath){\
|
||||
parts = [keyPath componentsSeparatedByString:@"."];\
|
||||
vKey = parts.lastObject;\
|
||||
parts = [parts subarrayWithRange:(NSRange){0, parts.count - 1}];\
|
||||
} else {\
|
||||
vKey = name;\
|
||||
} |
||||
|
||||
#define RGB(r, g, b) [UIColor colorWithRed:r/255.0 green:g/255.0 blue:b/255.0 alpha:1.0] |
||||
#define RGB_A(r, g, b, a) [UIColor colorWithRed:r/255.0 green:g/255.0 blue:b/255.0 alpha:a] |
||||
|
||||
#define ScreenWidth ([[UIScreen mainScreen] bounds].size.width) |
||||
|
||||
#define WX_ERROR_DOMAIN @"WXErrorDomain" |
||||
|
||||
#define WX_APPLICATION_WILL_RESIGN_ACTIVE @"WXApplicationWillResignActiveEvent" |
||||
|
||||
#define WX_APPLICATION_DID_BECOME_ACTIVE @"WXApplicationDidBecomeActiveEvent" |
||||
|
||||
#define WX_INSTANCE_NOTIFICATION_UPDATE_STATE @"WXInstUpdateState" |
||||
|
||||
#define WX_COMPONENT_NOTIFICATION_VIEW_LOADED @"WXComponentViewLoaded" |
||||
|
||||
#define WX_INSTANCE_WILL_DESTROY_NOTIFICATION @"WXSDKInstanceWillDestroyNotification" |
||||
|
||||
#define WX_SDKINSTANCE_WILL_RENDER @"WXSDKInstanceWillRender" |
||||
|
||||
#define WX_COMPONENT_THREAD_NAME @"com.taobao.weex.component" |
||||
|
||||
#define WX_BRIDGE_THREAD_NAME @"com.taobao.weex.bridge" |
||||
|
||||
#define WX_FONT_DOWNLOAD_DIR [[WXUtility cacheDirectory] stringByAppendingPathComponent:[NSString stringWithFormat:@"wxdownload"]] |
||||
|
||||
#define WX_EXPORT_METHOD_INTERNAL(method, token) \ |
||||
+ (NSString *)WX_CONCAT_WRAPPER(token, __LINE__) { \
|
||||
return NSStringFromSelector(method); \
|
||||
} |
||||
|
||||
#define WX_MODULE_EVENT_FIRE_NOTIFICATION @"WX_MODULE_EVENT_FIRE_NOTIFICATION" |
||||
#define WX_ICONFONT_DOWNLOAD_NOTIFICATION @"WX_ICONFONT_DOWNLOAD_FINISH_NOTIFICATION" |
||||
|
||||
#define WX_INSTANCE_JSCONTEXT_CREATE_NOTIFICATION @"WX_INSTANCE_JSCONTEXT_CREATE_NOTIFICATION" |
||||
|
||||
/**
|
||||
* @abstract export public method |
||||
*/ |
||||
#define WX_EXPORT_METHOD(method) WX_EXPORT_METHOD_INTERNAL(method,wx_export_method_) |
||||
|
||||
/**
|
||||
* @abstract export public method, support sync return value |
||||
* @warning the method can only be called on js thread |
||||
*/ |
||||
#define WX_EXPORT_METHOD_SYNC(method) WX_EXPORT_METHOD_INTERNAL(method,wx_export_method_sync_) |
||||
|
||||
/** extern "C" makes a function-name in C++ have 'C' linkage (compiler does not mangle the name)
|
||||
* so that client C code can link to (i.e use) your function using a 'C' compatible header file that contains just the declaration of your function. |
||||
* http://stackoverflow.com/questions/1041866/in-c-source-what-is-the-effect-of-extern-c
|
||||
*/ |
||||
#ifdef __cplusplus |
||||
# define WX_EXTERN_C_BEGIN extern "C" { |
||||
# define WX_EXTERN_C_END } |
||||
#else |
||||
# define WX_EXTERN_C_BEGIN |
||||
# define WX_EXTERN_C_END |
||||
#endif |
||||
|
||||
/**
|
||||
* @abstract Compared with system version of current device |
||||
* |
||||
* @return YES if greater than or equal to the system verison, otherwise, NO. |
||||
* |
||||
*/ |
||||
#define WX_SYS_VERSION_GREATER_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending) |
||||
|
||||
/**
|
||||
* @abstract Compared with system version of current device |
||||
* |
||||
* @return YES if greater than the system verison, otherwise, NO. |
||||
* |
||||
*/ |
||||
#define WX_SYS_VERSION_GREATER_THAN(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedDescending) |
||||
|
||||
/**
|
||||
* @abstract Compared with system version of current device |
||||
* |
||||
* @return YES if equal to the system verison, otherwise, NO. |
||||
* |
||||
*/ |
||||
#define WX_SYS_VERSION_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedSame) |
||||
|
||||
/**
|
||||
* @abstract Compared with system version of current device |
||||
* |
||||
* @return YES if less than the system verison, otherwise, NO. |
||||
* |
||||
*/ |
||||
#define WX_SYS_VERSION_LESS_THAN(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedAscending) |
||||
|
||||
/**
|
||||
* @abstract Compared with system version of current device |
||||
* |
||||
* @return YES if less than or equal to the system verison, otherwise, NO. |
||||
* |
||||
*/ |
||||
#define WX_SYS_LESS_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedDescending) |
||||
|
||||
/**
|
||||
* @abstract Estimate component's type. If the type isn't equal to WXComponentTypeCommon, then return. |
||||
*/ |
||||
#define WX_CHECK_COMPONENT_TYPE(type)\ |
||||
do {\
|
||||
if (type != WXComponentTypeCommon) {\
|
||||
return;\
|
||||
}\
|
||||
} while (0); |
||||
|
||||
|
||||
|
||||
#if __has_attribute(objc_requires_super) |
||||
#define WX_REQUIRES_SUPER __attribute__((objc_requires_super)) |
||||
#else |
||||
#define WX_REQUIRES_SUPER |
||||
#endif |
||||
|
||||
#endif |
||||
|
||||
WX_EXTERN_C_BEGIN |
||||
|
||||
NSString* GetWeexSDKVersion(void); |
||||
NSString* GetWeexSDKBuildTime(void); |
||||
unsigned long GetWeexSDKBuildTimestamp(void); |
||||
|
||||
WX_EXTERN_C_END |
@ -0,0 +1,48 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <Foundation/Foundation.h> |
||||
|
||||
@protocol WXDisplayLinkClient <NSObject> |
||||
/**
|
||||
* @abstract defalut is NO |
||||
**/ |
||||
@property (nonatomic) BOOL suspend; |
||||
|
||||
- (void)handleDisplayLink; |
||||
|
||||
@end |
||||
|
||||
@interface WXDisplayLinkManager : NSObject |
||||
/**
|
||||
* @abstract create WXDisplayLinkManager instance |
||||
**/ |
||||
+ (instancetype)sharedInstance; |
||||
|
||||
/**
|
||||
* @abstract add WXDisplayLinkClient to array |
||||
**/ |
||||
- (void)registerDisplayClient:(id<WXDisplayLinkClient>)client; |
||||
|
||||
/**
|
||||
* @abstract remove WXDisplayLinkClient to array |
||||
**/ |
||||
- (void)unregisterDisplayClient:(id<WXDisplayLinkClient>)client; |
||||
|
||||
@end |
@ -0,0 +1,32 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <UIKit/UIKit.h> |
||||
|
||||
@protocol WXErrorViewDelegate <NSObject> |
||||
|
||||
- (void)onclickErrorView; |
||||
|
||||
@end |
||||
|
||||
@interface WXErrorView : UIView |
||||
|
||||
@property (nonatomic, weak) id<WXErrorViewDelegate> delegate; |
||||
|
||||
@end |
@ -0,0 +1,26 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import "WXModuleProtocol.h" |
||||
|
||||
@protocol WXEventModuleProtocol<WXModuleProtocol> |
||||
|
||||
- (void)openURL:(NSString *)url; |
||||
|
||||
@end |
@ -0,0 +1,29 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <Foundation/Foundation.h> |
||||
#import "WXJSExceptionInfo.h" |
||||
|
||||
@interface WXExceptionUtils : NSObject |
||||
|
||||
+ (void)commitCriticalExceptionRT:(NSString *)instanceId errCode:(NSString *)errCode function:(NSString *)function exception:(NSString *)exception extParams:(NSDictionary *)extParams; |
||||
|
||||
+ (void)commitCriticalExceptionRT:(WXJSExceptionInfo*)jsExceptionInfo; |
||||
@end |
||||
|
@ -0,0 +1,47 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
|
||||
#import <Foundation/Foundation.h> |
||||
|
||||
@protocol WXExtendCallNativeProtocol <NSObject> |
||||
|
||||
@required |
||||
|
||||
/**
|
||||
* @abstract check parameters |
||||
* |
||||
* @param parameters the checked parameters. |
||||
* |
||||
* @return YES or NO. |
||||
* |
||||
*/ |
||||
+ (BOOL)checkParameters:(NSDictionary *)parameters; |
||||
|
||||
/**
|
||||
* @abstract excuteCallNative |
||||
* |
||||
* @param parameters the checked parameters. |
||||
* |
||||
* @return A value. |
||||
* |
||||
*/ |
||||
+ (id)excuteCallNative:(NSDictionary *)parameters; |
||||
|
||||
@end |
@ -0,0 +1,94 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import "WXModuleProtocol.h" |
||||
#import "WXType.h" |
||||
|
||||
@protocol WXImageOperationProtocol <NSObject> |
||||
|
||||
- (void)cancel; |
||||
|
||||
@end |
||||
|
||||
typedef NS_ENUM(NSInteger, WXImageLoaderCacheType) { |
||||
/**
|
||||
* The image wasn't available the imageLoad caches, but was downloaded from the web. |
||||
*/ |
||||
WXImageLoaderCacheTypeNone, |
||||
/**
|
||||
* The image was obtained from the disk cache. |
||||
*/ |
||||
WXImageLoaderCacheTypeDisk, |
||||
/**
|
||||
* The image was obtained from the memory cache. |
||||
*/ |
||||
WXImageLoaderCacheTypeMemory |
||||
}; |
||||
|
||||
@protocol WXImgLoaderProtocol <WXModuleProtocol> |
||||
|
||||
/**
|
||||
* @abstract Creates a image download handler with a given URL |
||||
* |
||||
* @param url The URL of the image to download |
||||
* |
||||
* @param imageFrame The frame of the image you want to set |
||||
* |
||||
* @param options : The options to be used for this download |
||||
* |
||||
* @param completedBlock : A block called once the download is completed. |
||||
* image : the image which has been download to local. |
||||
* error : the error which has happened in download. |
||||
* finished : a Boolean value indicating whether download action has finished. |
||||
*/ |
||||
- (id<WXImageOperationProtocol>)downloadImageWithURL:(NSString *)url imageFrame:(CGRect)imageFrame userInfo:(NSDictionary *)options completed:(void(^)(UIImage *image, NSError *error, BOOL finished))completedBlock; |
||||
|
||||
@optional |
||||
|
||||
/**
|
||||
* @abstract Creates a image download handler with a given URL |
||||
* |
||||
* @param imageView UIImageView to display the image |
||||
* |
||||
* @param url The URL of the image to download |
||||
* |
||||
* @param placeholder The image to be set initially, until the image request finishes. |
||||
* |
||||
* @param options : The options to be used for download operation |
||||
* |
||||
* @param progressBlock : A block called while the download start |
||||
* |
||||
* @param completedBlock : A block called once the download is completed. |
||||
* image : the image which has been download to local. |
||||
* error : the error which has happened in download. |
||||
* finished : a Boolean value indicating whether download action has finished. |
||||
*/ |
||||
- (void)setImageViewWithURL:(UIImageView*)imageView |
||||
url:(NSURL *)url |
||||
placeholderImage:(UIImage *)placeholder |
||||
options:(NSDictionary*)options |
||||
progress:(void(^)(NSInteger receivedSize, NSInteger expectedSize))progressBlock |
||||
completed:(void(^)(UIImage *image, NSError *error, WXImageLoaderCacheType cacheType, NSURL *imageURL))completedBlock; |
||||
|
||||
/**
|
||||
* Cancel the current download image |
||||
*/ |
||||
- (void)cancelCurrentImageLoad:(UIImageView*)imageView; |
||||
|
||||
@end |
@ -0,0 +1,52 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import "WXComponent.h" |
||||
|
||||
typedef enum |
||||
{ |
||||
WXPointIndicatorAlignCenter, // point indicator align center
|
||||
WXPointIndicatorAlignLeft, // point indicator align left
|
||||
WXPointIndicatorAlignRight, // point indicator align right
|
||||
} WXPointIndicatorAlignStyle; |
||||
|
||||
@interface WXIndicatorView : UIView |
||||
|
||||
@property (nonatomic, assign) NSInteger pointCount; // total count point of point indicator
|
||||
@property (nonatomic, assign) NSInteger currentPoint; // current light index of point at point indicator
|
||||
@property (nonatomic, strong) UIColor *pointColor; // normal point color of point indicator
|
||||
@property (nonatomic, strong) UIColor *lightColor; // highlight point color of point indicator
|
||||
@property (nonatomic, assign) WXPointIndicatorAlignStyle alignStyle; //align style of point indicator
|
||||
@property (nonatomic, assign) CGFloat pointSize; // point size of point indicator
|
||||
@property (nonatomic, assign) CGFloat pointSpace; // point space of point indicator
|
||||
|
||||
@end |
||||
|
||||
|
||||
@protocol WXIndicatorComponentDelegate <NSObject> |
||||
|
||||
-(void)setIndicatorView:(WXIndicatorView *)indicatorView; |
||||
|
||||
@end |
||||
|
||||
@interface WXIndicatorComponent : WXComponent |
||||
|
||||
@property (nonatomic, weak) id<WXIndicatorComponentDelegate> delegate; |
||||
|
||||
@end |
@ -0,0 +1,72 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <Foundation/Foundation.h> |
||||
|
||||
@interface WXJSExceptionInfo : NSObject |
||||
/**
|
||||
* instance id |
||||
*/ |
||||
@property(nonatomic,strong) NSString * instanceId; |
||||
/**
|
||||
* the URL where the exception occurred |
||||
*/ |
||||
@property(nonatomic,strong) NSString * bundleUrl; |
||||
/**
|
||||
* error code |
||||
*/ |
||||
@property(nonatomic,strong) NSString * errorCode; |
||||
/**
|
||||
* the function name of exception |
||||
*/ |
||||
@property(nonatomic,strong) NSString * functionName; |
||||
/**
|
||||
* exception detail; |
||||
*/ |
||||
@property(nonatomic,strong) NSString * exception; |
||||
/**
|
||||
* extend filed |
||||
*/ |
||||
@property(nonatomic,strong) NSMutableDictionary * userInfo; |
||||
/**
|
||||
* weex sdk version |
||||
*/ |
||||
@property(nonatomic,strong, readonly) NSString * sdkVersion; |
||||
/**
|
||||
* js framework verison |
||||
*/ |
||||
@property(nonatomic,strong, readonly) NSString * jsfmVersion; |
||||
|
||||
|
||||
/**
|
||||
* @abstract Initializes a WXJSException instance |
||||
* @param instanceId the id of instance |
||||
* @param bundleUrl the page URL where the exception occurred |
||||
* @param errorCode error Code |
||||
* @param exception exception detail |
||||
* @param userInfo extend field |
||||
*/ |
||||
- (instancetype)initWithInstanceId:(NSString *)instanceId |
||||
bundleUrl:(NSString *)bundleUrl |
||||
errorCode:(NSString *)errorCode |
||||
functionName:(NSString *)functionName |
||||
exception:(NSString *)exception |
||||
userInfo:(NSMutableDictionary *)userInfo; |
||||
|
||||
@end |
@ -0,0 +1,42 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import "WXJSExceptionInfo.h" |
||||
|
||||
typedef WXJSExceptionInfo WXRuntimeCheckException; |
||||
|
||||
@protocol WXJSExceptionProtocol <NSObject> |
||||
|
||||
/**
|
||||
* report js exception |
||||
* |
||||
* @param exception WXJSExceptionInfo |
||||
*/ |
||||
|
||||
- (void)onJSException:(WXJSExceptionInfo*) exception; |
||||
|
||||
|
||||
@optional |
||||
|
||||
/**
|
||||
* report runtime check exception, this is optional for this protocol |
||||
*/ |
||||
- (void)onRuntimeCheckException:(WXRuntimeCheckException*)exception; |
||||
|
||||
@end |
@ -0,0 +1,29 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <Foundation/Foundation.h> |
||||
|
||||
typedef void (^WXJSFrameworkLoadBlock)(NSString *path, NSString *script); |
||||
|
||||
@protocol WXJSFrameworkLoadProtocol <NSObject> |
||||
|
||||
- (void)loadRaxFramework:(WXJSFrameworkLoadBlock)block; |
||||
- (void)loadPolyfillFramework:(WXJSFrameworkLoadBlock)block; |
||||
|
||||
@end |
@ -0,0 +1,24 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
* |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* |
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import "WXScrollerComponent.h" |
||||
|
||||
@interface WXListComponent : WXScrollerComponent |
||||
|
||||
@end |
@ -0,0 +1,25 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <Foundation/Foundation.h> |
||||
#import "WXModuleProtocol.h" |
||||
|
||||
@interface WXModalUIModule : NSObject <WXModuleProtocol> |
||||
|
||||
@end |
@ -0,0 +1,78 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one |
||||
* or more contributor license agreements. See the NOTICE file |
||||
* distributed with this work for additional information |
||||
* regarding copyright ownership. The ASF licenses this file |
||||
* to you under the Apache License, Version 2.0 (the |
||||
* "License"); you may not use this file except in compliance |
||||
* with the License. You may obtain a copy of the License at |
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, |
||||
* software distributed under the License is distributed on an |
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
||||
* KIND, either express or implied. See the License for the |
||||
* specific language governing permissions and limitations |
||||
* under the License. |
||||
*/ |
||||
|
||||
#import <UIKit/UIKit.h> |
||||
#import "WXDefine.h" |
||||
#import "WXSDKInstance.h" |
||||
|
||||
#define MSG_SUCCESS @"WX_SUCCESS" |
||||
#define MSG_NO_HANDLER @"WX_NO_HANDLER" |
||||
#define MSG_NO_PERMIT @"WX_NO_PERMISSION" |
||||
#define MSG_FAILED @"WX_FAILED" |
||||
#define MSG_PARAM_ERR @"WX_PARAM_ERR" |
||||
#define MSG_EXP @"WX_EXCEPTION" |
||||
|
||||
@protocol WXModuleProtocol <NSObject> |
||||
|
||||
/**
|
||||
* @abstract the module callback , result can be string or dictionary. |
||||
* @discussion callback data to js, the id of callback function will be removed to save memory. |
||||
*/ |
||||
typedef void (^WXModuleCallback)(id result); |
||||
//DEPRECATED_MSG_ATTRIBUTE("use WXModuleKeepAliveCallback, you can specify keep the callback or not, if keeped, it can be called multi times, or it will be removed after called.")
|
||||
|
||||
/**
|
||||
* @abstract the module callback , result can be string or dictionary. |
||||
* @discussion callback data to js, you can specify the keepAlive parameter to keep callback function id keepalive or not. If the keepAlive is true, it won't be removed until instance destroyed, so you can call it repetitious. |
||||
*/ |
||||
typedef void (^WXModuleKeepAliveCallback)(id result, BOOL keepAlive); |
||||
|
||||
#define WX_EXPORT_MODULE(module) |
||||
|
||||
@optional |
||||
|
||||
/**
|
||||
* @abstract returns the execute queue for the module |
||||
* |
||||
* @return dispatch queue that module's methods will be invoked on |
||||
* |
||||
* @discussion the implementation is optional. Implement it if you want to execute module actions in the special queue. |
||||
* Default dispatch queue will be the main queue. |
||||
* |
||||
*/ |
||||
- (dispatch_queue_t)targetExecuteQueue; |
||||
|
||||
/**
|
||||
* @abstract returns the execute thread for the module |
||||
* |
||||
* @return thread that module's methods will be invoked on |
||||
* |
||||
* @discussion the implementation is optional. If you want to execute module actions in the special thread, you can create a new one.
|
||||
* If `targetExecuteQueue` is implemented, the queue returned will be respected first. |
||||
* Default is the main thread. |
||||
* |
||||
*/ |
||||
- (NSThread *)targetExecuteThread; |
||||
|
||||
/**
|
||||
* @abstract the instance bind to this module. It helps you to get many useful properties related to the instance. |
||||
*/ |
||||
@property (nonatomic, weak) WXSDKInstance *weexInstance; |
||||
|
||||
@end |