Comparar comentimentos

...

4 Cometimentos

Autor SHA1 Mensagem Data
  huaxuan 8e12e1363b 1.更新京东SDK há 2 anos
  huaxuan 08f3da0706 1.优化京东初始化SDK时报错的问题 há 2 anos
  huaxuan 19f31fe762 1.优化京东初始化SDK时报错的问题 há 2 anos
  Weller c1e9d62dda null-safe há 2 anos
43 ficheiros alterados com 1556 adições e 146 eliminações
  1. +146
    -0
      .dart_tool/package_config.json
  2. +93
    -0
      .dart_tool/package_config_subset
  3. +1
    -0
      .dart_tool/version
  4. +3
    -0
      .idea/.gitignore
  5. +458
    -0
      .idea/dbnavigator.xml
  6. +18
    -0
      .idea/flutter_jdsdk.iml
  7. +27
    -0
      .idea/libraries/Dart_SDK.xml
  8. +9
    -0
      .idea/libraries/Flutter_Plugins.xml
  9. +6
    -0
      .idea/misc.xml
  10. +8
    -0
      .idea/modules.xml
  11. +6
    -0
      .idea/vcs.xml
  12. +29
    -0
      .packages
  13. BIN
     
  14. +0
    -0
     
  15. +0
    -0
     
  16. +0
    -0
     
  17. +0
    -0
     
  18. +0
    -0
     
  19. +14
    -1
      android/src/main/AndroidManifest.xml
  20. +80
    -42
      android/src/main/java/com/jd/jdsdk/JDHelper.java
  21. +51
    -39
      android/src/main/java/com/jd/jdsdk/JdsdkPlugin.java
  22. +54
    -48
      example/.dart_tool/package_config.json
  23. +101
    -0
      example/.dart_tool/package_config_subset
  24. +1
    -0
      example/.dart_tool/version
  25. +2
    -0
      example/.flutter-plugins
  26. +1
    -0
      example/.flutter-plugins-dependencies
  27. +31
    -0
      example/.packages
  28. +18
    -0
      example/android/.idea/modules/android.iml
  29. +2
    -0
      example/android/local.properties
  30. +13
    -0
      example/ios/Flutter/Generated.xcconfig
  31. +13
    -0
      example/ios/Flutter/flutter_export_environment.sh
  32. +167
    -0
      example/pubspec.lock
  33. +2
    -2
      example/pubspec.yaml
  34. +7
    -5
      ios/Classes/Handler/FlutterKeplerHandler.m
  35. +2
    -2
      ios/Framework/JDSDK.framework/Headers/JDKeplerSDK.h
  36. +36
    -3
      ios/Framework/JDSDK.framework/Headers/KeplerApiManager.h
  37. BIN
     
  38. BIN
     
  39. +0
    -0
     
  40. +1
    -1
      ios/jdsdk.podspec
  41. +2
    -2
      lib/jdsdk.dart
  42. +153
    -0
      pubspec.lock
  43. +1
    -1
      pubspec.yaml

+ 146
- 0
.dart_tool/package_config.json Ver ficheiro

@@ -0,0 +1,146 @@
{
"configVersion": 2,
"packages": [
{
"name": "async",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/async-2.8.2",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "boolean_selector",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/boolean_selector-2.1.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "characters",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/characters-1.2.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "charcode",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/charcode-1.3.1",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "clock",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/clock-1.1.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "collection",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/collection-1.15.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "fake_async",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/fake_async-1.2.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "flutter",
"rootUri": "file:///Users/fnuouser/Documents/code/flutter/packages/flutter",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "flutter_test",
"rootUri": "file:///Users/fnuouser/Documents/code/flutter/packages/flutter_test",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "matcher",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/matcher-0.12.11",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "material_color_utilities",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/material_color_utilities-0.1.3",
"packageUri": "lib/",
"languageVersion": "2.13"
},
{
"name": "meta",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/meta-1.7.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "path",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/path-1.8.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "sky_engine",
"rootUri": "file:///Users/fnuouser/Documents/code/flutter/bin/cache/pkg/sky_engine",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "source_span",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/source_span-1.8.1",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "stack_trace",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/stack_trace-1.10.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "stream_channel",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/stream_channel-2.1.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "string_scanner",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/string_scanner-1.1.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "term_glyph",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/term_glyph-1.2.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "test_api",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/test_api-0.4.8",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "typed_data",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/typed_data-1.3.0",
"packageUri": "lib/",
"languageVersion": "2.12"
},
{
"name": "vector_math",
"rootUri": "file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/vector_math-2.1.1",
"packageUri": "lib/",
"languageVersion": "2.14"
},
{
"name": "jdsdk",
"rootUri": "../",
"packageUri": "lib/",
"languageVersion": "2.12"
}
],
"generated": "2022-03-23T10:13:45.063379Z",
"generator": "pub",
"generatorVersion": "2.16.1"
}

+ 93
- 0
.dart_tool/package_config_subset Ver ficheiro

@@ -0,0 +1,93 @@
async
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/async-2.8.2/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/async-2.8.2/lib/
boolean_selector
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/boolean_selector-2.1.0/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/boolean_selector-2.1.0/lib/
characters
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/characters-1.2.0/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/characters-1.2.0/lib/
charcode
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/charcode-1.3.1/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/charcode-1.3.1/lib/
clock
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/clock-1.1.0/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/clock-1.1.0/lib/
collection
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/collection-1.15.0/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/collection-1.15.0/lib/
fake_async
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/fake_async-1.2.0/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/fake_async-1.2.0/lib/
matcher
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/matcher-0.12.11/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/matcher-0.12.11/lib/
material_color_utilities
2.13
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/material_color_utilities-0.1.3/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/material_color_utilities-0.1.3/lib/
meta
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/meta-1.7.0/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/meta-1.7.0/lib/
path
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/path-1.8.0/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/path-1.8.0/lib/
source_span
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/source_span-1.8.1/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/source_span-1.8.1/lib/
stack_trace
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/stack_trace-1.10.0/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/stack_trace-1.10.0/lib/
stream_channel
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/stream_channel-2.1.0/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/stream_channel-2.1.0/lib/
string_scanner
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/string_scanner-1.1.0/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/string_scanner-1.1.0/lib/
term_glyph
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/term_glyph-1.2.0/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/term_glyph-1.2.0/lib/
test_api
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/test_api-0.4.8/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/test_api-0.4.8/lib/
typed_data
2.12
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/typed_data-1.3.0/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/typed_data-1.3.0/lib/
vector_math
2.14
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/vector_math-2.1.1/
file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/vector_math-2.1.1/lib/
sky_engine
2.12
file:///Users/fnuouser/Documents/code/flutter/bin/cache/pkg/sky_engine/
file:///Users/fnuouser/Documents/code/flutter/bin/cache/pkg/sky_engine/lib/
flutter
2.12
file:///Users/fnuouser/Documents/code/flutter/packages/flutter/
file:///Users/fnuouser/Documents/code/flutter/packages/flutter/lib/
flutter_test
2.12
file:///Users/fnuouser/Documents/code/flutter/packages/flutter_test/
file:///Users/fnuouser/Documents/code/flutter/packages/flutter_test/lib/
jdsdk
2.12
file:///Users/fnuouser/Documents/code/zhiying/flutter_jdsdk/
file:///Users/fnuouser/Documents/code/zhiying/flutter_jdsdk/lib/
2

+ 1
- 0
.dart_tool/version Ver ficheiro

@@ -0,0 +1 @@
2.10.3

+ 3
- 0
.idea/.gitignore Ver ficheiro

@@ -0,0 +1,3 @@
# Default ignored files
/shelf/
/workspace.xml

+ 458
- 0
.idea/dbnavigator.xml Ver ficheiro

@@ -0,0 +1,458 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DBNavigator.Project.DataEditorManager">
<record-view-column-sorting-type value="BY_INDEX" />
<value-preview-text-wrapping value="true" />
<value-preview-pinned value="false" />
</component>
<component name="DBNavigator.Project.DataExportManager">
<export-instructions>
<create-header value="true" />
<friendly-headers value="false" />
<quote-values-containing-separator value="true" />
<quote-all-values value="false" />
<value-separator value="" />
<file-name value="" />
<file-location value="" />
<scope value="GLOBAL" />
<destination value="FILE" />
<format value="EXCEL" />
<charset value="UTF-8" />
</export-instructions>
</component>
<component name="DBNavigator.Project.DatabaseBrowserManager">
<autoscroll-to-editor value="false" />
<autoscroll-from-editor value="true" />
<show-object-properties value="true" />
<loaded-nodes />
</component>
<component name="DBNavigator.Project.DatabaseFileManager">
<open-files />
</component>
<component name="DBNavigator.Project.EditorStateManager">
<last-used-providers />
</component>
<component name="DBNavigator.Project.ExecutionManager">
<retain-sticky-names value="false" />
</component>
<component name="DBNavigator.Project.MethodExecutionManager">
<method-browser />
<execution-history>
<group-entries value="true" />
<execution-inputs />
</execution-history>
<argument-values-cache />
</component>
<component name="DBNavigator.Project.ObjectDependencyManager">
<last-used-dependency-type value="INCOMING" />
</component>
<component name="DBNavigator.Project.ObjectQuickFilterManager">
<last-used-operator value="EQUAL" />
<filters />
</component>
<component name="DBNavigator.Project.ScriptExecutionManager" clear-outputs="true">
<recently-used-interfaces />
</component>
<component name="DBNavigator.Project.Settings">
<connections />
<browser-settings>
<general>
<display-mode value="TABBED" />
<navigation-history-size value="100" />
<show-object-details value="false" />
</general>
<filters>
<object-type-filter>
<object-type name="SCHEMA" enabled="true" />
<object-type name="USER" enabled="true" />
<object-type name="ROLE" enabled="true" />
<object-type name="PRIVILEGE" enabled="true" />
<object-type name="CHARSET" enabled="true" />
<object-type name="TABLE" enabled="true" />
<object-type name="VIEW" enabled="true" />
<object-type name="MATERIALIZED_VIEW" enabled="true" />
<object-type name="NESTED_TABLE" enabled="true" />
<object-type name="COLUMN" enabled="true" />
<object-type name="INDEX" enabled="true" />
<object-type name="CONSTRAINT" enabled="true" />
<object-type name="DATASET_TRIGGER" enabled="true" />
<object-type name="DATABASE_TRIGGER" enabled="true" />
<object-type name="SYNONYM" enabled="true" />
<object-type name="SEQUENCE" enabled="true" />
<object-type name="PROCEDURE" enabled="true" />
<object-type name="FUNCTION" enabled="true" />
<object-type name="PACKAGE" enabled="true" />
<object-type name="TYPE" enabled="true" />
<object-type name="TYPE_ATTRIBUTE" enabled="true" />
<object-type name="ARGUMENT" enabled="true" />
<object-type name="DIMENSION" enabled="true" />
<object-type name="CLUSTER" enabled="true" />
<object-type name="DBLINK" enabled="true" />
</object-type-filter>
</filters>
<sorting>
<object-type name="COLUMN" sorting-type="NAME" />
<object-type name="FUNCTION" sorting-type="NAME" />
<object-type name="PROCEDURE" sorting-type="NAME" />
<object-type name="ARGUMENT" sorting-type="POSITION" />
</sorting>
<default-editors>
<object-type name="VIEW" editor-type="SELECTION" />
<object-type name="PACKAGE" editor-type="SELECTION" />
<object-type name="TYPE" editor-type="SELECTION" />
</default-editors>
</browser-settings>
<navigation-settings>
<lookup-filters>
<lookup-objects>
<object-type name="SCHEMA" enabled="true" />
<object-type name="USER" enabled="false" />
<object-type name="ROLE" enabled="false" />
<object-type name="PRIVILEGE" enabled="false" />
<object-type name="CHARSET" enabled="false" />
<object-type name="TABLE" enabled="true" />
<object-type name="VIEW" enabled="true" />
<object-type name="MATERIALIZED VIEW" enabled="true" />
<object-type name="INDEX" enabled="true" />
<object-type name="CONSTRAINT" enabled="true" />
<object-type name="DATASET TRIGGER" enabled="true" />
<object-type name="DATABASE TRIGGER" enabled="true" />
<object-type name="SYNONYM" enabled="false" />
<object-type name="SEQUENCE" enabled="true" />
<object-type name="PROCEDURE" enabled="true" />
<object-type name="FUNCTION" enabled="true" />
<object-type name="PACKAGE" enabled="true" />
<object-type name="TYPE" enabled="true" />
<object-type name="DIMENSION" enabled="false" />
<object-type name="CLUSTER" enabled="false" />
<object-type name="DBLINK" enabled="true" />
</lookup-objects>
<force-database-load value="false" />
<prompt-connection-selection value="true" />
<prompt-schema-selection value="true" />
</lookup-filters>
</navigation-settings>
<dataset-grid-settings>
<general>
<enable-zooming value="true" />
<enable-column-tooltip value="true" />
</general>
<sorting>
<nulls-first value="true" />
<max-sorting-columns value="4" />
</sorting>
<tracking-columns>
<columnNames value="" />
<visible value="true" />
<editable value="false" />
</tracking-columns>
</dataset-grid-settings>
<dataset-editor-settings>
<text-editor-popup>
<active value="false" />
<active-if-empty value="false" />
<data-length-threshold value="100" />
<popup-delay value="1000" />
</text-editor-popup>
<values-actions-popup>
<show-popup-button value="true" />
<element-count-threshold value="1000" />
<data-length-threshold value="250" />
</values-actions-popup>
<general>
<fetch-block-size value="100" />
<fetch-timeout value="30" />
<trim-whitespaces value="true" />
<convert-empty-strings-to-null value="true" />
<select-content-on-cell-edit value="true" />
<large-value-preview-active value="true" />
</general>
<filters>
<prompt-filter-dialog value="true" />
<default-filter-type value="BASIC" />
</filters>
<qualified-text-editor text-length-threshold="300">
<content-types>
<content-type name="Text" enabled="true" />
<content-type name="Properties" enabled="true" />
<content-type name="XML" enabled="true" />
<content-type name="DTD" enabled="true" />
<content-type name="HTML" enabled="true" />
<content-type name="XHTML" enabled="true" />
<content-type name="Java" enabled="true" />
<content-type name="SQL" enabled="true" />
<content-type name="PL/SQL" enabled="true" />
<content-type name="JSON" enabled="true" />
<content-type name="JSON5" enabled="true" />
<content-type name="Groovy" enabled="true" />
<content-type name="AIDL" enabled="true" />
<content-type name="YAML" enabled="true" />
<content-type name="Manifest" enabled="true" />
</content-types>
</qualified-text-editor>
<record-navigation>
<navigation-target value="VIEWER" />
</record-navigation>
</dataset-editor-settings>
<code-editor-settings>
<general>
<show-object-navigation-gutter value="false" />
<show-spec-declaration-navigation-gutter value="true" />
<enable-spellchecking value="true" />
<enable-reference-spellchecking value="false" />
</general>
<confirmations>
<save-changes value="false" />
<revert-changes value="true" />
</confirmations>
</code-editor-settings>
<code-completion-settings>
<filters>
<basic-filter>
<filter-element type="RESERVED_WORD" id="keyword" selected="true" />
<filter-element type="RESERVED_WORD" id="function" selected="true" />
<filter-element type="RESERVED_WORD" id="parameter" selected="true" />
<filter-element type="RESERVED_WORD" id="datatype" selected="true" />
<filter-element type="RESERVED_WORD" id="exception" selected="true" />
<filter-element type="OBJECT" id="schema" selected="true" />
<filter-element type="OBJECT" id="role" selected="true" />
<filter-element type="OBJECT" id="user" selected="true" />
<filter-element type="OBJECT" id="privilege" selected="true" />
<user-schema>
<filter-element type="OBJECT" id="table" selected="true" />
<filter-element type="OBJECT" id="view" selected="true" />
<filter-element type="OBJECT" id="materialized view" selected="true" />
<filter-element type="OBJECT" id="index" selected="true" />
<filter-element type="OBJECT" id="constraint" selected="true" />
<filter-element type="OBJECT" id="trigger" selected="true" />
<filter-element type="OBJECT" id="synonym" selected="false" />
<filter-element type="OBJECT" id="sequence" selected="true" />
<filter-element type="OBJECT" id="procedure" selected="true" />
<filter-element type="OBJECT" id="function" selected="true" />
<filter-element type="OBJECT" id="package" selected="true" />
<filter-element type="OBJECT" id="type" selected="true" />
<filter-element type="OBJECT" id="dimension" selected="true" />
<filter-element type="OBJECT" id="cluster" selected="true" />
<filter-element type="OBJECT" id="dblink" selected="true" />
</user-schema>
<public-schema>
<filter-element type="OBJECT" id="table" selected="false" />
<filter-element type="OBJECT" id="view" selected="false" />
<filter-element type="OBJECT" id="materialized view" selected="false" />
<filter-element type="OBJECT" id="index" selected="false" />
<filter-element type="OBJECT" id="constraint" selected="false" />
<filter-element type="OBJECT" id="trigger" selected="false" />
<filter-element type="OBJECT" id="synonym" selected="false" />
<filter-element type="OBJECT" id="sequence" selected="false" />
<filter-element type="OBJECT" id="procedure" selected="false" />
<filter-element type="OBJECT" id="function" selected="false" />
<filter-element type="OBJECT" id="package" selected="false" />
<filter-element type="OBJECT" id="type" selected="false" />
<filter-element type="OBJECT" id="dimension" selected="false" />
<filter-element type="OBJECT" id="cluster" selected="false" />
<filter-element type="OBJECT" id="dblink" selected="false" />
</public-schema>
<any-schema>
<filter-element type="OBJECT" id="table" selected="true" />
<filter-element type="OBJECT" id="view" selected="true" />
<filter-element type="OBJECT" id="materialized view" selected="true" />
<filter-element type="OBJECT" id="index" selected="true" />
<filter-element type="OBJECT" id="constraint" selected="true" />
<filter-element type="OBJECT" id="trigger" selected="true" />
<filter-element type="OBJECT" id="synonym" selected="true" />
<filter-element type="OBJECT" id="sequence" selected="true" />
<filter-element type="OBJECT" id="procedure" selected="true" />
<filter-element type="OBJECT" id="function" selected="true" />
<filter-element type="OBJECT" id="package" selected="true" />
<filter-element type="OBJECT" id="type" selected="true" />
<filter-element type="OBJECT" id="dimension" selected="true" />
<filter-element type="OBJECT" id="cluster" selected="true" />
<filter-element type="OBJECT" id="dblink" selected="true" />
</any-schema>
</basic-filter>
<extended-filter>
<filter-element type="RESERVED_WORD" id="keyword" selected="true" />
<filter-element type="RESERVED_WORD" id="function" selected="true" />
<filter-element type="RESERVED_WORD" id="parameter" selected="true" />
<filter-element type="RESERVED_WORD" id="datatype" selected="true" />
<filter-element type="RESERVED_WORD" id="exception" selected="true" />
<filter-element type="OBJECT" id="schema" selected="true" />
<filter-element type="OBJECT" id="user" selected="true" />
<filter-element type="OBJECT" id="role" selected="true" />
<filter-element type="OBJECT" id="privilege" selected="true" />
<user-schema>
<filter-element type="OBJECT" id="table" selected="true" />
<filter-element type="OBJECT" id="view" selected="true" />
<filter-element type="OBJECT" id="materialized view" selected="true" />
<filter-element type="OBJECT" id="index" selected="true" />
<filter-element type="OBJECT" id="constraint" selected="true" />
<filter-element type="OBJECT" id="trigger" selected="true" />
<filter-element type="OBJECT" id="synonym" selected="true" />
<filter-element type="OBJECT" id="sequence" selected="true" />
<filter-element type="OBJECT" id="procedure" selected="true" />
<filter-element type="OBJECT" id="function" selected="true" />
<filter-element type="OBJECT" id="package" selected="true" />
<filter-element type="OBJECT" id="type" selected="true" />
<filter-element type="OBJECT" id="dimension" selected="true" />
<filter-element type="OBJECT" id="cluster" selected="true" />
<filter-element type="OBJECT" id="dblink" selected="true" />
</user-schema>
<public-schema>
<filter-element type="OBJECT" id="table" selected="true" />
<filter-element type="OBJECT" id="view" selected="true" />
<filter-element type="OBJECT" id="materialized view" selected="true" />
<filter-element type="OBJECT" id="index" selected="true" />
<filter-element type="OBJECT" id="constraint" selected="true" />
<filter-element type="OBJECT" id="trigger" selected="true" />
<filter-element type="OBJECT" id="synonym" selected="true" />
<filter-element type="OBJECT" id="sequence" selected="true" />
<filter-element type="OBJECT" id="procedure" selected="true" />
<filter-element type="OBJECT" id="function" selected="true" />
<filter-element type="OBJECT" id="package" selected="true" />
<filter-element type="OBJECT" id="type" selected="true" />
<filter-element type="OBJECT" id="dimension" selected="true" />
<filter-element type="OBJECT" id="cluster" selected="true" />
<filter-element type="OBJECT" id="dblink" selected="true" />
</public-schema>
<any-schema>
<filter-element type="OBJECT" id="table" selected="true" />
<filter-element type="OBJECT" id="view" selected="true" />
<filter-element type="OBJECT" id="materialized view" selected="true" />
<filter-element type="OBJECT" id="index" selected="true" />
<filter-element type="OBJECT" id="constraint" selected="true" />
<filter-element type="OBJECT" id="trigger" selected="true" />
<filter-element type="OBJECT" id="synonym" selected="true" />
<filter-element type="OBJECT" id="sequence" selected="true" />
<filter-element type="OBJECT" id="procedure" selected="true" />
<filter-element type="OBJECT" id="function" selected="true" />
<filter-element type="OBJECT" id="package" selected="true" />
<filter-element type="OBJECT" id="type" selected="true" />
<filter-element type="OBJECT" id="dimension" selected="true" />
<filter-element type="OBJECT" id="cluster" selected="true" />
<filter-element type="OBJECT" id="dblink" selected="true" />
</any-schema>
</extended-filter>
</filters>
<sorting enabled="true">
<sorting-element type="RESERVED_WORD" id="keyword" />
<sorting-element type="RESERVED_WORD" id="datatype" />
<sorting-element type="OBJECT" id="column" />
<sorting-element type="OBJECT" id="table" />
<sorting-element type="OBJECT" id="view" />
<sorting-element type="OBJECT" id="materialized view" />
<sorting-element type="OBJECT" id="index" />
<sorting-element type="OBJECT" id="constraint" />
<sorting-element type="OBJECT" id="trigger" />
<sorting-element type="OBJECT" id="synonym" />
<sorting-element type="OBJECT" id="sequence" />
<sorting-element type="OBJECT" id="procedure" />
<sorting-element type="OBJECT" id="function" />
<sorting-element type="OBJECT" id="package" />
<sorting-element type="OBJECT" id="type" />
<sorting-element type="OBJECT" id="dimension" />
<sorting-element type="OBJECT" id="cluster" />
<sorting-element type="OBJECT" id="dblink" />
<sorting-element type="OBJECT" id="schema" />
<sorting-element type="OBJECT" id="role" />
<sorting-element type="OBJECT" id="user" />
<sorting-element type="RESERVED_WORD" id="function" />
<sorting-element type="RESERVED_WORD" id="parameter" />
</sorting>
<format>
<enforce-code-style-case value="true" />
</format>
</code-completion-settings>
<execution-engine-settings>
<statement-execution>
<fetch-block-size value="100" />
<execution-timeout value="20" />
<debug-execution-timeout value="600" />
<focus-result value="false" />
<prompt-execution value="false" />
</statement-execution>
<script-execution>
<command-line-interfaces />
<execution-timeout value="300" />
</script-execution>
<method-execution>
<execution-timeout value="30" />
<debug-execution-timeout value="600" />
<parameter-history-size value="10" />
</method-execution>
</execution-engine-settings>
<operation-settings>
<transactions>
<uncommitted-changes>
<on-project-close value="ASK" />
<on-disconnect value="ASK" />
<on-autocommit-toggle value="ASK" />
</uncommitted-changes>
<multiple-uncommitted-changes>
<on-commit value="ASK" />
<on-rollback value="ASK" />
</multiple-uncommitted-changes>
</transactions>
<session-browser>
<disconnect-session value="ASK" />
<kill-session value="ASK" />
<reload-on-filter-change value="false" />
</session-browser>
<compiler>
<compile-type value="KEEP" />
<compile-dependencies value="ASK" />
<always-show-controls value="false" />
</compiler>
<debugger>
<debugger-type value="ASK" />
<use-generic-runners value="true" />
</debugger>
</operation-settings>
<ddl-file-settings>
<extensions>
<mapping file-type-id="VIEW" extensions="vw" />
<mapping file-type-id="TRIGGER" extensions="trg" />
<mapping file-type-id="PROCEDURE" extensions="prc" />
<mapping file-type-id="FUNCTION" extensions="fnc" />
<mapping file-type-id="PACKAGE" extensions="pkg" />
<mapping file-type-id="PACKAGE_SPEC" extensions="pks" />
<mapping file-type-id="PACKAGE_BODY" extensions="pkb" />
<mapping file-type-id="TYPE" extensions="tpe" />
<mapping file-type-id="TYPE_SPEC" extensions="tps" />
<mapping file-type-id="TYPE_BODY" extensions="tpb" />
</extensions>
<general>
<lookup-ddl-files value="true" />
<create-ddl-files value="false" />
<synchronize-ddl-files value="true" />
<use-qualified-names value="false" />
<make-scripts-rerunnable value="true" />
</general>
</ddl-file-settings>
<general-settings>
<regional-settings>
<date-format value="MEDIUM" />
<number-format value="UNGROUPED" />
<locale value="SYSTEM_DEFAULT" />
<use-custom-formats value="false" />
</regional-settings>
<environment>
<environment-types>
<environment-type id="development" name="Development" description="Development environment" color="-2430209/-12296320" readonly-code="false" readonly-data="false" />
<environment-type id="integration" name="Integration" description="Integration environment" color="-2621494/-12163514" readonly-code="true" readonly-data="false" />
<environment-type id="production" name="Production" description="Productive environment" color="-11574/-10271420" readonly-code="true" readonly-data="true" />
<environment-type id="other" name="Other" description="" color="-1576/-10724543" readonly-code="false" readonly-data="false" />
</environment-types>
<visibility-settings>
<connection-tabs value="true" />
<dialog-headers value="true" />
<object-editor-tabs value="true" />
<script-editor-tabs value="false" />
<execution-result-tabs value="true" />
</visibility-settings>
</environment>
</general-settings>
</component>
<component name="DBNavigator.Project.StatementExecutionManager">
<execution-variables />
</component>
</project>

+ 18
- 0
.idea/flutter_jdsdk.iml Ver ficheiro

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.pub" />
<excludeFolder url="file://$MODULE_DIR$/build" />
<excludeFolder url="file://$MODULE_DIR$/.dart_tool" />
<excludeFolder url="file://$MODULE_DIR$/example/.dart_tool" />
<excludeFolder url="file://$MODULE_DIR$/example/build" />
<excludeFolder url="file://$MODULE_DIR$/example/.pub" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Dart SDK" level="project" />
<orderEntry type="library" name="Flutter Plugins" level="project" />
</component>
</module>

+ 27
- 0
.idea/libraries/Dart_SDK.xml Ver ficheiro

@@ -0,0 +1,27 @@
<component name="libraryTable">
<library name="Dart SDK">
<CLASSES>
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/async" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/cli" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/collection" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/convert" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/core" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/developer" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/ffi" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/html" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/indexed_db" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/io" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/isolate" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/js" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/js_util" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/math" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/mirrors" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/svg" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/typed_data" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/web_audio" />
<root url="file://$PROJECT_DIR$/../../flutter/bin/cache/dart-sdk/lib/web_gl" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</component>

+ 9
- 0
.idea/libraries/Flutter_Plugins.xml Ver ficheiro

@@ -0,0 +1,9 @@
<component name="libraryTable">
<library name="Flutter Plugins" type="FlutterPluginsLibraryType">
<CLASSES>
<root url="file://$PROJECT_DIR$" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</component>

+ 6
- 0
.idea/misc.xml Ver ficheiro

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="FrameworkDetectionExcludesConfiguration">
<type id="android" />
</component>
</project>

+ 8
- 0
.idea/modules.xml Ver ficheiro

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/flutter_jdsdk.iml" filepath="$PROJECT_DIR$/.idea/flutter_jdsdk.iml" />
</modules>
</component>
</project>

+ 6
- 0
.idea/vcs.xml Ver ficheiro

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>

+ 29
- 0
.packages Ver ficheiro

@@ -0,0 +1,29 @@
# This file is deprecated. Tools should instead consume
# `.dart_tool/package_config.json`.
#
# For more info see: https://dart.dev/go/dot-packages-deprecation
#
# Generated by pub on 2022-03-23 18:13:45.052458.
async:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/async-2.8.2/lib/
boolean_selector:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/boolean_selector-2.1.0/lib/
characters:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/characters-1.2.0/lib/
charcode:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/charcode-1.3.1/lib/
clock:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/clock-1.1.0/lib/
collection:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/collection-1.15.0/lib/
fake_async:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/fake_async-1.2.0/lib/
flutter:file:///Users/fnuouser/Documents/code/flutter/packages/flutter/lib/
flutter_test:file:///Users/fnuouser/Documents/code/flutter/packages/flutter_test/lib/
matcher:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/matcher-0.12.11/lib/
material_color_utilities:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/material_color_utilities-0.1.3/lib/
meta:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/meta-1.7.0/lib/
path:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/path-1.8.0/lib/
sky_engine:file:///Users/fnuouser/Documents/code/flutter/bin/cache/pkg/sky_engine/lib/
source_span:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/source_span-1.8.1/lib/
stack_trace:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/stack_trace-1.10.0/lib/
stream_channel:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/stream_channel-2.1.0/lib/
string_scanner:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/string_scanner-1.1.0/lib/
term_glyph:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/term_glyph-1.2.0/lib/
test_api:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/test_api-0.4.8/lib/
typed_data:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/typed_data-1.3.0/lib/
vector_math:file:///Users/fnuouser/.pub-cache/hosted/pub.flutter-io.cn/vector_math-2.1.1/lib/
jdsdk:lib/


+ 0
- 0
Ver ficheiro


+ 0
- 0
Ver ficheiro


+ 0
- 0
Ver ficheiro


+ 0
- 0
Ver ficheiro


+ 0
- 0
Ver ficheiro


+ 14
- 1
android/src/main/AndroidManifest.xml Ver ficheiro

@@ -1,3 +1,16 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.jd.jdsdk">
package="com.jd.jdsdk">

<application>
<activity
android:name="com.kepler.jd.sdk.KeplerBackActivity"
android:exported="true"
android:theme="@android:style/Theme.Translucent">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="sdkback${JD_APPKEY}" />
</intent-filter>
</activity>
</application>
</manifest>

+ 80
- 42
android/src/main/java/com/jd/jdsdk/JDHelper.java Ver ficheiro

@@ -1,14 +1,15 @@
package com.jd.jdsdk;

import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Context;
import android.content.DialogInterface;
import android.os.Handler;
import android.provider.Settings;
import android.text.TextUtils;
import android.util.Log;
import android.widget.Toast;

import com.jd.kepler.res.ApkResources;
import com.kepler.jd.Listener.AsyncInitListener;
import com.kepler.jd.Listener.OpenAppAction;
import com.kepler.jd.login.KeplerApiManager;
@@ -27,17 +28,18 @@ import io.flutter.plugin.common.PluginRegistry;

public class JDHelper {
private static JDHelper jdHelper;
// private PluginRegistry.Registrar register;
// private PluginRegistry.Registrar register;
// private ActivityPluginBinding binding;
private WeakReference<Activity> mActivity;
KelperTask mKelperTask;
private Activity activity;

Handler mHandler = new Handler();
KeplerAttachParameter mKeplerAttachParameter = new KeplerAttachParameter();//这个是即时性参数 可以设置
LoadingDialog dialog;


private Activity getActivity(){
private Activity getActivity() {
return this.mActivity.get();
// if(null != register){
// return register.activity();
@@ -56,30 +58,40 @@ public class JDHelper {
OpenAppAction mOpenAppAction = new OpenAppAction() {

@Override
public void onStatus(final int status, final String url) {
mHandler.post(new Runnable() {
@Override
public void run() {
if (status == OpenAppAction.OpenAppAction_start) {//开始状态未必一定执行,
dialogShow();
}else {
mKelperTask = null;
dialogDiss();
}
if(status == OpenAppAction.OpenAppAction_result_NoJDAPP) {
// Toast.makeText(getActivity(), "您未安装京东app,你可以手动打开以下链接地址:"+url+" ,code="+status, Toast.LENGTH_SHORT).show();
}else if(status == OpenAppAction.OpenAppAction_result_BlackUrl){
// Toast.makeText(getActivity(), "url不在白名单,你可以手动打开以下链接地址:"+url+" ,code="+status, Toast.LENGTH_SHORT).show();
}else if(status == OpenAppAction.OpenAppAction_result_ErrorScheme){
// Toast.makeText(getActivity(), "呼起协议异常"+" ,code="+status, Toast.LENGTH_SHORT).show();
}else if(status == OpenAppAction.OpenAppAction_result_APP){

}else if(status == OpenAppAction.OpenAppAction_result_NetError){
// Toast.makeText(getActivity(), ApkResources.getSingleton().getString("kepler_check_net")+" ,code="+status+" ,url="+url,Toast.LENGTH_SHORT).show();
}
}
});
public void onStatus(int status) {
if (status == OpenAppAction.OpenAppAction_start) {//开始状态未必一定执行,
// dialogShow();
} else {
mKelperTask = null;
// dialogDiss();
}
}

// @Override
// public void onStatus(final int status, final String url) {
// mHandler.post(new Runnable() {
// @Override
// public void run() {
// if (status == OpenAppAction.OpenAppAction_start) {//开始状态未必一定执行,
// dialogShow();
// }else {
// mKelperTask = null;
// dialogDiss();
// }
// if(status == OpenAppAction.OpenAppAction_result_NoJDAPP) {
// // Toast.makeText(getActivity(), "您未安装京东app,你可以手动打开以下链接地址:"+url+" ,code="+status, Toast.LENGTH_SHORT).show();
// }else if(status == OpenAppAction.OpenAppAction_result_BlackUrl){
// // Toast.makeText(getActivity(), "url不在白名单,你可以手动打开以下链接地址:"+url+" ,code="+status, Toast.LENGTH_SHORT).show();
// }else if(status == OpenAppAction.OpenAppAction_result_ErrorScheme){
// // Toast.makeText(getActivity(), "呼起协议异常"+" ,code="+status, Toast.LENGTH_SHORT).show();
// }else if(status == OpenAppAction.OpenAppAction_result_APP){
//
// }else if(status == OpenAppAction.OpenAppAction_result_NetError){
// // Toast.makeText(getActivity(), ApkResources.getSingleton().getString("kepler_check_net")+" ,code="+status+" ,url="+url,Toast.LENGTH_SHORT).show();
// }
// }
// });
// }
};

private void dialogShow() {
@@ -100,7 +112,7 @@ public class JDHelper {
}

private void dialogDiss() {
if(dialog!=null)
if (dialog != null)
dialog.dismiss();
}

@@ -119,12 +131,13 @@ public class JDHelper {
// }

//第一次调用getInstance register不能为空
public static JDHelper getInstance(ActivityPluginBinding binding){
if (jdHelper == null){
synchronized (JDHelper.class){
public static JDHelper getInstance(ActivityPluginBinding binding) {
if (jdHelper == null) {
synchronized (JDHelper.class) {
jdHelper = new JDHelper();
if(null != binding){
if (null != binding) {
jdHelper.setActivity(binding.getActivity());
jdHelper.activity = binding.getActivity();
}
}
} else {
@@ -134,20 +147,26 @@ public class JDHelper {
}




/**
* 初始化开普勒
*
* @param call
* @param result
*/
public void initKepler(MethodCall call, MethodChannel.Result result){
public void initKepler(MethodCall call, MethodChannel.Result result) {
String appKey = call.argument("appKey");
String appSecret = call.argument("appSecret");
Log.d("flutter-taoke","initKepler"+getActivity());
KeplerApiManager.asyncInitSdk(getActivity().getApplication(), appKey, appSecret, new AsyncInitListener() {
Log.d("flutter-taoke", "initKepler" + getActivity());
Log.d("flutter-taoke", "initKepler:" + appKey + " " + appSecret);
@SuppressLint("HardwareIds") String id = Settings.Secure.getString(
activity.getContentResolver(),
Settings.Secure.ANDROID_ID
);
Log.d("flutter-taoke", "initKeplerId:" + id);
KeplerApiManager.asyncInitSdk(getActivity().getApplication(), appKey, appSecret, id, new AsyncInitListener() {
@Override
public void onSuccess() {
Log.d("京东初始化", "成功");
result.success(PluginResponse.success(null).toMap());
}

@@ -155,26 +174,45 @@ public class JDHelper {
public void onFailure() {
String errorCode = "-1";
String errorMsg = "初始化失败";
Log.d("京东初始化", "失败");
result.success(new PluginResponse(errorCode, errorMsg, null).toMap());
}
});
// KeplerApiManager.asyncInitSdk(getActivity().getApplication(), appKey, appSecret, new AsyncInitListener() {
// @Override
// public void onSuccess() {
// result.success(PluginResponse.success(null).toMap());
// }
//
// @Override
// public void onFailure() {
// String errorCode = "-1";
// String errorMsg = "初始化失败";
// result.success(new PluginResponse(errorCode, errorMsg, null).toMap());
// }
// });
}


/**
* 通过URL方式打开
*
* @param call
* @param result
*/
public void openUrl(MethodCall call, MethodChannel.Result result){
public void openUrl(MethodCall call, MethodChannel.Result result) {
String url = call.argument("url");
if(TextUtils.isEmpty(url)){
if (TextUtils.isEmpty(url)) {
return;
}
mKelperTask = KeplerApiManager.getWebViewService().openAppWebViewPage(getActivity(),
url,
mKeplerAttachParameter,
mOpenAppAction);
try {
mKelperTask = KeplerApiManager.getWebViewService().openJDUrlPage(url,
mKeplerAttachParameter,
activity,
mOpenAppAction, 1500);
} catch (JSONException e) {
e.printStackTrace();
}
}

}

+ 51
- 39
android/src/main/java/com/jd/jdsdk/JdsdkPlugin.java Ver ficheiro

@@ -11,55 +11,67 @@ import io.flutter.plugin.common.MethodChannel.MethodCallHandler;
import io.flutter.plugin.common.MethodChannel.Result;
import io.flutter.plugin.common.PluginRegistry.Registrar;

/** JdsdkPlugin */
/**
* JdsdkPlugin
*/
public class JdsdkPlugin implements FlutterPlugin, MethodCallHandler, ActivityAware {
public static JDHelper mJDHelper;
private MethodChannel channel;
@Override
public void onAttachedToEngine( FlutterPluginBinding flutterPluginBinding) {
public static JDHelper mJDHelper;
private MethodChannel channel;
private ActivityPluginBinding binding;
@Override
public void onAttachedToEngine(FlutterPluginBinding flutterPluginBinding) {
// mJDHelper = JDHelper.getInstance(flutterPluginBinding.getApplicationContext());
channel = new MethodChannel(flutterPluginBinding.getBinaryMessenger(), "jdsdk");
channel.setMethodCallHandler(this);
}
channel = new MethodChannel(flutterPluginBinding.getBinaryMessenger(), "jdsdk");
channel.setMethodCallHandler(this);
}

@Override
public void onMethodCall( MethodCall call, Result result) {
if (call.method.equals("getPlatformVersion")) {
result.success("Android " + android.os.Build.VERSION.RELEASE);
} else if (call.method.equals("init")) {
mJDHelper.initKepler(call,result);
}else if (call.method.equals("openUrl")) {
Log.d("flutter-test","openUrl");
mJDHelper.openUrl(call,result);
}else {
result.notImplemented();
@Override
public void onMethodCall(MethodCall call, Result result) {
try {
if (mJDHelper == null) {
mJDHelper = JDHelper.getInstance(binding);
}
if (call.method.equals("getPlatformVersion")) {
result.success("Android " + android.os.Build.VERSION.RELEASE);
} else if (call.method.equals("init")) {
mJDHelper.initKepler(call, result);
} else if (call.method.equals("openUrl")) {
Log.d("flutter-test", "openUrl");
mJDHelper.openUrl(call, result);
} else {
result.notImplemented();
}
} catch (Exception e) {
Log.d("zhiying", "捕获出错");
e.printStackTrace();
}
}
}

@Override
public void onDetachedFromEngine( FlutterPluginBinding binding) {
channel.setMethodCallHandler(null);
mJDHelper = null;
}
@Override
public void onDetachedFromEngine(FlutterPluginBinding binding) {
channel.setMethodCallHandler(null);
mJDHelper = null;
}

@Override
public void onAttachedToActivity( ActivityPluginBinding binding) {
Log.d("flutter-taoke","onAttachedToActivity"+binding);
mJDHelper = JDHelper.getInstance(binding);
}
@Override
public void onAttachedToActivity(ActivityPluginBinding binding) {
Log.d("flutter-taoke", "onAttachedToActivity" + binding);
this.binding=binding;
mJDHelper = JDHelper.getInstance(binding);
}

@Override
public void onDetachedFromActivityForConfigChanges() {
@Override
public void onDetachedFromActivityForConfigChanges() {

}
}

@Override
public void onReattachedToActivityForConfigChanges( ActivityPluginBinding binding) {
@Override
public void onReattachedToActivityForConfigChanges(ActivityPluginBinding binding) {

}
}

@Override
public void onDetachedFromActivity() {
@Override
public void onDetachedFromActivity() {

}
}
}

+ 54
- 48
example/.dart_tool/package_config.json Ver ficheiro

@@ -3,150 +3,156 @@
"packages": [
{
"name": "async",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/async-2.5.0-nullsafety.1",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/async-2.8.2",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "boolean_selector",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/boolean_selector-2.1.0-nullsafety.1",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/boolean_selector-2.1.0",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "characters",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/characters-1.1.0-nullsafety.3",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/characters-1.2.0",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "charcode",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/charcode-1.2.0-nullsafety.1",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/charcode-1.3.1",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "clock",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/clock-1.1.0-nullsafety.1",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/clock-1.1.0",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "collection",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/collection-1.15.0-nullsafety.3",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/collection-1.15.0",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "cupertino_icons",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/cupertino_icons-0.1.3",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/cupertino_icons-1.0.5",
"packageUri": "lib/",
"languageVersion": "2.0"
"languageVersion": "2.12"
},
{
"name": "fake_async",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/fake_async-1.2.0-nullsafety.1",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/fake_async-1.2.0",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "flutter",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/packages/flutter",
"rootUri": "file:///Users/fnuo123/flutter/packages/flutter",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "flutter_test",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/packages/flutter_test",
"rootUri": "file:///Users/fnuo123/flutter/packages/flutter_test",
"packageUri": "lib/",
"languageVersion": "2.2"
"languageVersion": "2.12"
},
{
"name": "jdsdk",
"rootUri": "../../",
"packageUri": "lib/",
"languageVersion": "2.1"
"languageVersion": "2.12"
},
{
"name": "matcher",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/matcher-0.12.10-nullsafety.1",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/matcher-0.12.11",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "material_color_utilities",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/material_color_utilities-0.1.3",
"packageUri": "lib/",
"languageVersion": "2.13"
},
{
"name": "meta",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/meta-1.3.0-nullsafety.3",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/meta-1.7.0",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "path",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/path-1.8.0-nullsafety.1",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/path-1.8.0",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "sky_engine",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/bin/cache/pkg/sky_engine",
"rootUri": "file:///Users/fnuo123/flutter/bin/cache/pkg/sky_engine",
"packageUri": "lib/",
"languageVersion": "1.11"
"languageVersion": "2.12"
},
{
"name": "source_span",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/source_span-1.8.0-nullsafety.2",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/source_span-1.8.1",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "stack_trace",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/stack_trace-1.10.0-nullsafety.1",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/stack_trace-1.10.0",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "stream_channel",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/stream_channel-2.1.0-nullsafety.1",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/stream_channel-2.1.0",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "string_scanner",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/string_scanner-1.1.0-nullsafety.1",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/string_scanner-1.1.0",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "term_glyph",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/term_glyph-1.2.0-nullsafety.1",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/term_glyph-1.2.0",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "test_api",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/test_api-0.2.19-nullsafety.2",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/test_api-0.4.8",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "typed_data",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/typed_data-1.3.0-nullsafety.3",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/typed_data-1.3.0",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.12"
},
{
"name": "vector_math",
"rootUri": "file:///Users/fnuoos/development/flutter/flutter/.pub-cache/hosted/pub.flutter-io.cn/vector_math-2.1.0-nullsafety.3",
"rootUri": "file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/vector_math-2.1.1",
"packageUri": "lib/",
"languageVersion": "2.10"
"languageVersion": "2.14"
},
{
"name": "jdsdk_example",
"rootUri": "../",
"packageUri": "lib/",
"languageVersion": "2.1"
"languageVersion": "2.12"
}
],
"generated": "2021-05-21T07:44:13.030851Z",
"generated": "2022-11-09T02:46:32.202871Z",
"generator": "pub",
"generatorVersion": "2.10.0"
"generatorVersion": "2.16.1"
}

+ 101
- 0
example/.dart_tool/package_config_subset Ver ficheiro

@@ -0,0 +1,101 @@
jdsdk
2.12
file:///Users/fnuo123/Documents/fnuo_project_two/flutter_jdsdk/
file:///Users/fnuo123/Documents/fnuo_project_two/flutter_jdsdk/lib/
async
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/async-2.8.2/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/async-2.8.2/lib/
boolean_selector
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/boolean_selector-2.1.0/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/boolean_selector-2.1.0/lib/
characters
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/characters-1.2.0/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/characters-1.2.0/lib/
charcode
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/charcode-1.3.1/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/charcode-1.3.1/lib/
clock
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/clock-1.1.0/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/clock-1.1.0/lib/
collection
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/collection-1.15.0/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/collection-1.15.0/lib/
cupertino_icons
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/cupertino_icons-1.0.5/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/cupertino_icons-1.0.5/lib/
fake_async
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/fake_async-1.2.0/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/fake_async-1.2.0/lib/
matcher
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/matcher-0.12.11/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/matcher-0.12.11/lib/
material_color_utilities
2.13
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/material_color_utilities-0.1.3/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/material_color_utilities-0.1.3/lib/
meta
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/meta-1.7.0/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/meta-1.7.0/lib/
path
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/path-1.8.0/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/path-1.8.0/lib/
source_span
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/source_span-1.8.1/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/source_span-1.8.1/lib/
stack_trace
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/stack_trace-1.10.0/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/stack_trace-1.10.0/lib/
stream_channel
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/stream_channel-2.1.0/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/stream_channel-2.1.0/lib/
string_scanner
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/string_scanner-1.1.0/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/string_scanner-1.1.0/lib/
term_glyph
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/term_glyph-1.2.0/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/term_glyph-1.2.0/lib/
test_api
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/test_api-0.4.8/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/test_api-0.4.8/lib/
typed_data
2.12
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/typed_data-1.3.0/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/typed_data-1.3.0/lib/
vector_math
2.14
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/vector_math-2.1.1/
file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/vector_math-2.1.1/lib/
sky_engine
2.12
file:///Users/fnuo123/flutter/bin/cache/pkg/sky_engine/
file:///Users/fnuo123/flutter/bin/cache/pkg/sky_engine/lib/
flutter
2.12
file:///Users/fnuo123/flutter/packages/flutter/
file:///Users/fnuo123/flutter/packages/flutter/lib/
flutter_test
2.12
file:///Users/fnuo123/flutter/packages/flutter_test/
file:///Users/fnuo123/flutter/packages/flutter_test/lib/
jdsdk_example
2.12
file:///Users/fnuo123/Documents/fnuo_project_two/flutter_jdsdk/example/
file:///Users/fnuo123/Documents/fnuo_project_two/flutter_jdsdk/example/lib/
2

+ 1
- 0
example/.dart_tool/version Ver ficheiro

@@ -0,0 +1 @@
2.10.3

+ 2
- 0
example/.flutter-plugins Ver ficheiro

@@ -0,0 +1,2 @@
# This is a generated file; do not edit or check into version control.
jdsdk=/Users/fnuo123/Documents/fnuo_project_two/flutter_jdsdk/

+ 1
- 0
example/.flutter-plugins-dependencies Ver ficheiro

@@ -0,0 +1 @@
{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"jdsdk","path":"/Users/fnuo123/Documents/fnuo_project_two/flutter_jdsdk/","dependencies":[]}],"android":[{"name":"jdsdk","path":"/Users/fnuo123/Documents/fnuo_project_two/flutter_jdsdk/","dependencies":[]}],"macos":[],"linux":[],"windows":[],"web":[]},"dependencyGraph":[{"name":"jdsdk","dependencies":[]}],"date_created":"2022-11-09 10:46:32.385260","version":"2.10.3"}

+ 31
- 0
example/.packages Ver ficheiro

@@ -0,0 +1,31 @@
# This file is deprecated. Tools should instead consume
# `.dart_tool/package_config.json`.
#
# For more info see: https://dart.dev/go/dot-packages-deprecation
#
# Generated by pub on 2022-11-09 10:46:32.184234.
async:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/async-2.8.2/lib/
boolean_selector:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/boolean_selector-2.1.0/lib/
characters:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/characters-1.2.0/lib/
charcode:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/charcode-1.3.1/lib/
clock:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/clock-1.1.0/lib/
collection:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/collection-1.15.0/lib/
cupertino_icons:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/cupertino_icons-1.0.5/lib/
fake_async:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/fake_async-1.2.0/lib/
flutter:file:///Users/fnuo123/flutter/packages/flutter/lib/
flutter_test:file:///Users/fnuo123/flutter/packages/flutter_test/lib/
jdsdk:../lib/
matcher:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/matcher-0.12.11/lib/
material_color_utilities:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/material_color_utilities-0.1.3/lib/
meta:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/meta-1.7.0/lib/
path:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/path-1.8.0/lib/
sky_engine:file:///Users/fnuo123/flutter/bin/cache/pkg/sky_engine/lib/
source_span:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/source_span-1.8.1/lib/
stack_trace:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/stack_trace-1.10.0/lib/
stream_channel:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/stream_channel-2.1.0/lib/
string_scanner:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/string_scanner-1.1.0/lib/
term_glyph:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/term_glyph-1.2.0/lib/
test_api:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/test_api-0.4.8/lib/
typed_data:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/typed_data-1.3.0/lib/
vector_math:file:///Users/fnuo123/flutter/.pub-cache/hosted/pub.flutter-io.cn/vector_math-2.1.1/lib/
jdsdk_example:lib/

+ 18
- 0
example/android/.idea/modules/android.iml Ver ficheiro

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<module external.linked.project.id=":" external.linked.project.path="$MODULE_DIR$/../.." external.root.project.path="$MODULE_DIR$/../.." external.system.id="GRADLE" type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="android-gradle" name="Android-Gradle">
<configuration>
<option name="GRADLE_PROJECT_PATH" value=":" />
<option name="LAST_SUCCESSFUL_SYNC_AGP_VERSION" />
<option name="LAST_KNOWN_AGP_VERSION" />
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$/../.." />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

+ 2
- 0
example/android/local.properties Ver ficheiro

@@ -0,0 +1,2 @@
sdk.dir=/Users/fnuo123/Library/Android/sdk
flutter.sdk=/Users/fnuo123/flutter

+ 13
- 0
example/ios/Flutter/Generated.xcconfig Ver ficheiro

@@ -0,0 +1,13 @@
// This is a generated file; do not edit or check into version control.
FLUTTER_ROOT=/Users/fnuouser/Documents/code/flutter
FLUTTER_APPLICATION_PATH=/Users/fnuouser/Documents/code/zhiying/flutter_jdsdk/example
COCOAPODS_PARALLEL_CODE_SIGN=true
FLUTTER_TARGET=lib/main.dart
FLUTTER_BUILD_DIR=build
FLUTTER_BUILD_NAME=1.0.0
FLUTTER_BUILD_NUMBER=1
EXCLUDED_ARCHS[sdk=iphonesimulator*]=i386
DART_OBFUSCATION=false
TRACK_WIDGET_CREATION=false
TREE_SHAKE_ICONS=false
PACKAGE_CONFIG=.packages

+ 13
- 0
example/ios/Flutter/flutter_export_environment.sh Ver ficheiro

@@ -0,0 +1,13 @@
#!/bin/sh
# This is a generated file; do not edit or check into version control.
export "FLUTTER_ROOT=/Users/fnuouser/Documents/code/flutter"
export "FLUTTER_APPLICATION_PATH=/Users/fnuouser/Documents/code/zhiying/flutter_jdsdk/example"
export "COCOAPODS_PARALLEL_CODE_SIGN=true"
export "FLUTTER_TARGET=lib/main.dart"
export "FLUTTER_BUILD_DIR=build"
export "FLUTTER_BUILD_NAME=1.0.0"
export "FLUTTER_BUILD_NUMBER=1"
export "DART_OBFUSCATION=false"
export "TRACK_WIDGET_CREATION=false"
export "TREE_SHAKE_ICONS=false"
export "PACKAGE_CONFIG=.packages"

+ 167
- 0
example/pubspec.lock Ver ficheiro

@@ -0,0 +1,167 @@
# Generated by pub
# See https://dart.dev/tools/pub/glossary#lockfile
packages:
async:
dependency: transitive
description:
name: async
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.8.2"
boolean_selector:
dependency: transitive
description:
name: boolean_selector
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.0"
characters:
dependency: transitive
description:
name: characters
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.2.0"
charcode:
dependency: transitive
description:
name: charcode
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.3.1"
clock:
dependency: transitive
description:
name: clock
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.1.0"
collection:
dependency: transitive
description:
name: collection
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.15.0"
cupertino_icons:
dependency: "direct main"
description:
name: cupertino_icons
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.5"
fake_async:
dependency: transitive
description:
name: fake_async
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.2.0"
flutter:
dependency: "direct main"
description: flutter
source: sdk
version: "0.0.0"
flutter_test:
dependency: "direct dev"
description: flutter
source: sdk
version: "0.0.0"
jdsdk:
dependency: "direct dev"
description:
path: ".."
relative: true
source: path
version: "0.0.1"
matcher:
dependency: transitive
description:
name: matcher
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.12.11"
material_color_utilities:
dependency: transitive
description:
name: material_color_utilities
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.1.3"
meta:
dependency: transitive
description:
name: meta
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.7.0"
path:
dependency: transitive
description:
name: path
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.8.0"
sky_engine:
dependency: transitive
description: flutter
source: sdk
version: "0.0.99"
source_span:
dependency: transitive
description:
name: source_span
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.8.1"
stack_trace:
dependency: transitive
description:
name: stack_trace
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.10.0"
stream_channel:
dependency: transitive
description:
name: stream_channel
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.0"
string_scanner:
dependency: transitive
description:
name: string_scanner
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.1.0"
term_glyph:
dependency: transitive
description:
name: term_glyph
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.2.0"
test_api:
dependency: transitive
description:
name: test_api
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.4.8"
typed_data:
dependency: transitive
description:
name: typed_data
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.3.0"
vector_math:
dependency: transitive
description:
name: vector_math
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.1"
sdks:
dart: ">=2.14.0 <3.0.0"

+ 2
- 2
example/pubspec.yaml Ver ficheiro

@@ -3,7 +3,7 @@ description: Demonstrates how to use the jdsdk plugin.
publish_to: 'none'

environment:
sdk: ">=2.1.0 <3.0.0"
sdk: ">=2.12.0 <3.0.0"

dependencies:
flutter:
@@ -11,7 +11,7 @@ dependencies:

# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2
cupertino_icons: ^1.0.4

dev_dependencies:
flutter_test:


+ 7
- 5
ios/Classes/Handler/FlutterKeplerHandler.m Ver ficheiro

@@ -9,11 +9,11 @@
NSString *appSecret = call.arguments[@"appSecret"];
NSLog (@"appKey is :%@", appKey);
NSLog (@"appSecret is :%@", appSecret);
[[KeplerApiManager sharedKPService]asyncInitSdk:appKey secretKey:appSecret sucessCallback:^(){
[[KeplerApiManager sharedKPService] asyncInitSdk:appKey secretKey:appSecret sucessCallback:^(){
NSLog (@"success");
result(@"{status:1}");
}failedCallback:^(NSError *error){
NSLog (@"fail");
NSLog (@"fail%@",error);
result(@"{status:0}");
}];
}
@@ -24,10 +24,12 @@
NSInteger jumpType = [[NSNumber numberWithInt:1] integerValue];
// NSDictionary *userInfo = [FlutterKeplerTools nullToNil:call.arguments[@"userInfo"]];
UIViewController *rootViewController = [UIApplication sharedApplication].delegate.window.rootViewController;
NSLog(@"JDUrl%@",url);
if ([[UIApplication sharedApplication]canOpenURL:[NSURL URLWithString:[NSString stringWithFormat:@"openapp.jdmobile://"]]]) {//判断是否安装京东app
[ [KeplerApiManager sharedKPService]openKeplerPageWithURL:url userInfo:nil successCallback:^{
if ([[UIApplication sharedApplication]canOpenURL:[NSURL URLWithString:[NSString stringWithFormat:@"openapp.jdmobile://"]]]) {
//判断是否安装京东app
// 判断是否安装京东app
[[KeplerApiManager sharedKPService] openKeplerPageWithURL:url userInfo:@{@"mopenbp5" : @""} successCallback:^{
NSLog (@"success");
result(@"{status:1}");
} failedCallback:^(NSInteger code, NSString * _Nonnull url) {


+ 2
- 2
ios/Framework/JDSDK.framework/Headers/JDKeplerSDK.h Ver ficheiro

@@ -15,6 +15,6 @@ FOUNDATION_EXPORT double JDKeplerSDKVersionNumber;
FOUNDATION_EXPORT const unsigned char JDKeplerSDKVersionString[];

// In this header, you should import all the public headers of your framework using statements like #import <JDKeplerSDK/PublicHeader.h>
#import<JDSDK/KeplerApiManager.h>
#import<JDSDK/KeplerApiManager.h> //打包SDK用这个
//#import <JDKeplerSDK/KeplerApiManager.h> //依赖demo工程用这个


+ 36
- 3
ios/Framework/JDSDK.framework/Headers/KeplerApiManager.h Ver ficheiro

@@ -4,11 +4,13 @@
// 提供Kepler服务
// Created by JD.K on 16/6/20.
// Copyright © 2016年 JD.K. All rights reserved.
// version 3.0.1
// version 3.0.3

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

NS_ASSUME_NONNULL_BEGIN

/** 初始化成功回调 */
typedef void (^initSuccessCallback)();
/** 初始化失败回调 */
@@ -28,9 +30,25 @@ typedef enum {
KeplerErrorCodeWhited, //本地url不在白名单中
KeplerErrorCodeResponsed, //本地呼起open协议失败
KeplerErrorCodeNoSid, //sid为空
KeplerErrorCodeInValidApp //应用不合法
KeplerErrorCodeInValidApp, //应用不合法
KeplerErrorCodeUnInstalledJXAPP, //未安装京喜app
KeplerErrorCodeOpenJXFailed //无法打开京喜商品,返回h5链接
} KeplerErrorCode;

typedef enum {
KeplerJXErrorCodeSucceed = 0, //正常呼起
KeplerJXErrorCodeReturnUrl = 1, //兜底url
KeplerJXErrorCodeNoSkuUrl = 2, //非sku链接
KeplerJXErrorCodeAnalysisFailed = 3, //逆解析失败
KeplerJXErrorCodeNoParameter = -1, //参数为空
KeplerJXErrorCodeUnusual = -99, //异常
} KeplerJXErrorCode;


FOUNDATION_EXTERN const NSString *kJDKeplerReturnUrl_appName;
FOUNDATION_EXTERN const NSString *kJDKeplerReturnUrl_appSchema;
FOUNDATION_EXTERN const NSString *kJDKeplerReturnUrl_appBundle;

@interface KeplerApiManager : NSObject

@@ -98,7 +116,7 @@ typedef enum {
/**
跳转京东app

@param url 调用方传入的URl参数
@param url 调用方传入的URL参数
@param userInfo 调用sdk时传入的kepler自定义参数
@param failedCallback code 表示错误编码, url 引起调用失败的url
*/
@@ -107,5 +125,20 @@ typedef enum {
successCallback:(OpenSuccessBlock _Nullable)success
failedCallback:(OpenFailedBlock _Nonnull)failure;


/**
根据url跳转京喜App,根据接口返回结果兼容京东App商品跳转
@param url 商品链接
@param userInfo 自定义参数
@param successBlock 呼起App成功的回调
@param failureBlock 呼起失败回调。打开原生App失败会以code+url方式返回,可用webview打开url
@discussion 返回键信息通过userInfo参数传入,需通过外部变量kJDKeplerReturnUrl_appName,kJDKeplerReturnUrl_appSchema,kJDKeplerReturnUrl_appBundle设置key值,对应value分别为接入应用的应用名,schema,Bundle Identifier。
*/
- (void)openJXPageWithUrl:(NSString *)url
userInfo:(NSDictionary *)userInfo
success:(OpenSuccessBlock)successBlock
failure:(OpenFailedBlock)failureBlock;

@end

NS_ASSUME_NONNULL_END



+ 0
- 0
Ver ficheiro


+ 1
- 1
ios/jdsdk.podspec Ver ficheiro

@@ -18,7 +18,7 @@ A new Flutter plugin.
s.dependency 'Flutter'
# 京东导入
s.vendored_frameworks = 'Framework/*.framework'
s.vendored_frameworks = 'Framework/JDSDK.framework'
# s.resource = ''
s.platform = :ios, '8.0'


+ 2
- 2
lib/jdsdk.dart Ver ficheiro

@@ -12,13 +12,13 @@ class Jdsdk {
}

///初始化sdk
static Future<String> init({@required String appKey, @required String appSecret}) async {
static Future<String?> init({required String appKey, required String appSecret}) async {
var result = await _channel.invokeMethod('init',{"appKey": appKey, "appSecret": appSecret});
return result?.toString();
}

///打开京东任意url
static Future<String> openUrl({@required String url}) async {
static Future<String?> openUrl({required String url}) async {
final String version = await _channel.invokeMethod('openUrl',{"url": url});
return version?.toString();
}


+ 153
- 0
pubspec.lock Ver ficheiro

@@ -0,0 +1,153 @@
# Generated by pub
# See https://dart.dev/tools/pub/glossary#lockfile
packages:
async:
dependency: transitive
description:
name: async
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.8.2"
boolean_selector:
dependency: transitive
description:
name: boolean_selector
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.0"
characters:
dependency: transitive
description:
name: characters
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.2.0"
charcode:
dependency: transitive
description:
name: charcode
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.3.1"
clock:
dependency: transitive
description:
name: clock
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.1.0"
collection:
dependency: transitive
description:
name: collection
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.15.0"
fake_async:
dependency: transitive
description:
name: fake_async
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.2.0"
flutter:
dependency: "direct main"
description: flutter
source: sdk
version: "0.0.0"
flutter_test:
dependency: "direct dev"
description: flutter
source: sdk
version: "0.0.0"
matcher:
dependency: transitive
description:
name: matcher
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.12.11"
material_color_utilities:
dependency: transitive
description:
name: material_color_utilities
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.1.3"
meta:
dependency: transitive
description:
name: meta
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.7.0"
path:
dependency: transitive
description:
name: path
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.8.0"
sky_engine:
dependency: transitive
description: flutter
source: sdk
version: "0.0.99"
source_span:
dependency: transitive
description:
name: source_span
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.8.1"
stack_trace:
dependency: transitive
description:
name: stack_trace
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.10.0"
stream_channel:
dependency: transitive
description:
name: stream_channel
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.0"
string_scanner:
dependency: transitive
description:
name: string_scanner
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.1.0"
term_glyph:
dependency: transitive
description:
name: term_glyph
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.2.0"
test_api:
dependency: transitive
description:
name: test_api
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.4.8"
typed_data:
dependency: transitive
description:
name: typed_data
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.3.0"
vector_math:
dependency: transitive
description:
name: vector_math
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.1"
sdks:
dart: ">=2.14.0 <3.0.0"

+ 1
- 1
pubspec.yaml Ver ficheiro

@@ -5,7 +5,7 @@ author: wuchaowen <chaowen1110@gmail.com>
homepage: https://github.com/selfimgr/flutter_jdsdk.git

environment:
sdk: ">=2.1.0 <3.0.0"
sdk: ">=2.12.0 <3.0.0"

dependencies:
flutter:


Carregando…
Cancelar
Guardar