Skip to content

Webview assets patch #1

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 265 commits into from
May 14, 2019
Merged

Conversation

ened
Copy link

@ened ened commented May 13, 2019

@shaqian Rebased to latest flutter plugins repo and included a few cosmetic changes, please take a look.

mehmetf and others added 30 commits February 21, 2019 17:00
…ter#1250)

* Cast the NSInteger to long and use %ld formatter

This avoids platform dependent compilations errors and is the official recommendation by Apple: https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/Strings/Articles/formatSpecifiers.html

Also remove a couple of unused vars.
…lutter#1241)

Fix an issue in android camera plugin where orientation data was not captured
the first time the camera is used.

Fixes flutter/flutter#28180
Unfortunately we can't fix this and still be compatible with stable, so
for now `prefer_collection_literals` is just being disabled to unbreak CI.
flutter#1255)

Background FlutterViews do not have an activity, the Maps and Camera
plugins are foreground only and assumed and activity is available which
can result in a crash when the plugin is registered by a background
FlutterView.

We workaround by just not registering the plugins if there is no
activity.

Similar to flutter#1125
* Reduce Android compiler warnings, prevent NPE

* Upgrade Android gradle plugin to 3.3.1

* Save few object allocations (nit)
flutter#1256)

Only applications that use the MyLocation feature needs to add the
location permission to the Android manifest, but in some configurations
Gradle fails the build if the permission is not included.

Fixes flutter/flutter#28339
… nil on getFlutterError (flutter#1274)

When `getFlutterError` was introduced(flutter#1226), some plugins started to throw exceptions for successful operations. This fixed the issue. Related issues include flutter/flutter#28344; flutter/flutter#28065; flutter/flutter#28103
It also fixed an unintentional typo introduced in the same PR.(flutter#1226)
Actually responds in the onPurchasesUpdated() handler automatically
called when purchase updates are received.

Exposes BillingClient#queryPurchases, which is meant to be used to get
recently purchased items from the on disk Play cache.

Also exposes BillingClient#queryPurchaseHistoryAsync, which returns the
most recent purchase of the user for each SKU of the given type.

This patch also contains some updates to the Gradle script so that the
example app version is set independently of the Flutter SDK version.

flutter/flutter#26326
This is an improvement of the documentation and the example for [flutter/flutter#16217](flutter/flutter#16217)

Added a registration flow and a sign in with email&password flow in the example app.
Separated the example app into 2 parts: registration and SignIn/SignOut.
Updated README, added a list of supported authentication methods and an example of registration.
Some refactoring split out from a future patch on querying the purchase
history.

1. Moved all Android app-specific information to the keystore.properties
   file. I initially didn't put everything there because normally the
   keystore file only has signing information. But the app ID, verison
   name, and version code all do need to be potentially modified in the
   example to get it up and running. They're not inherently sensitive
   like the signing information is but it probably makes sense to keep
   them out of source control for the plugin repo too.
2. Fixed the MethodChannel argument naming for some of the new methods.
3. Added a missing `BillingResponse` code.
4. Changed the `BillingClient#_callbacks` to be a map of lists instead
   of a list of maps. The OnPurchasesUpdated() listener is a singleton
   and we never really have a good opportunity to pass down a `handle`.
   It makes more sense to me to store these by name. Also deleted the
   `remove` code since it would cause `handle` to be off for future
   entries.
5. Fixed a concurrency issue on Android in the example app, and tweaked
   the UI slightly.
…lutter#1240)

* Maps Widget Marker IOS impl

* Make JSON Conversions part of a class

* fix formatting issues

* Remove all usages of id

* Fix NSDictionary usage

* Fix compile error
…tter#1229)

* Marker APIs are now widget based (Android)

note: This commit only deals with Android side of changes.

* Fix format

* Remove MarkerId class
…flutter#1239)

* Marker APIs are now widget based

Additional Context: Maps Plugin is in the process of being
moved away from a controller based API to a widget based api.
This is to facilitate easier state management and address a
lot of the common issues.

* use collection literals

* Address CR comments

* Revert "use collection literals"

This reverts commit 75956c2.

* fix collection literal stuff

* Crearte a marker update handler and update TODOs

* ignore collection literals

* Fix test failures

* Move marker updates to their own chunks

* Fix failing tests

* Improved some docs and added some assertions

* Make class private

* Fix all hashCode and equals

* update formatring

* Address all the pending cr comments

* fix failing test

* Do not use => without return value

* remove factory method

* User `Marker marker` instead of `Marker m`

* Update changelog and pubspec.yaml
* Account for NSNull

* fix changelog

* Remove and disable api key and initialize at the right time

* update changelog

* Fix update initial markers
When the user picks a png that has transparent pixels, these are then lost (made black). This was caused by always saving the image as JPEG when resizing.

Determine if a file needs to be saved as PNG by looking at the alpha channel.
Dart side for add payment in StoreKit.
Fixed some bug in the Objective-C code.
Removed add payment with only product identifier in Objective-C since it seems unnecessary.
Part of flutter/flutter#26328
Michael Klimushyn and others added 29 commits May 1, 2019 10:15
Some dartdoc updates to the store_kit_wrappers.
…map load (flutter#1558)

* Update myLocationButton settings on map load

* Update pubspec and changelog
Not supporting downloads right now, but there's some dangling unit tests
and members that still reference them. Remove them and regenerate the
mapping classes.
…or iOS (flutter#1355)

* Use `putFile` iOS SDK method instead of `putData` for `putFile`

- `putFile` should use `putFile` iOS SDK method correctly
- `putFile` uses file extension as Content-Type automatically if not specified

* Verify ‘content-type’ is ‘text/plain’

- flutter#1355 (review)
-  ‘content-type’ was ‘application/octet-stream’ before this pull request
There is no requirement that the callback parameters need to be non-null,
so without these checks, the plugin can generate exceptions, e.g. when
overlays that have no onTap callback are clicked.

Also guards against overlay or marker IDs not being present in the
dictionaries, which could happen by race condition (e.g. a click event
could be slightly delayed and get handled after the associated object has
already been removed).
Update our handling of the struct to work on both flutter stable and
master. The plugin itself works on both, but our unit tests now only
run on master.
* Add testing for path_provider
* Add @collinjackson to codeowners
* Release as 1.0
…n with phone auth. (flutter#1568)

* Update phone auth on Android to avoid signing in the user automatically.
* Remove nextHandle from public API
)

This is relatively trivial, requiring only some additional logic to disambiguate click events between the various possible overlays.

I've followed the majority (2/3: Android and JavaScript) Google Maps API convention that circles have a center property, rather than
a position.

Also adds a page to the example app to demonstrate its use, which I tested on iOS and Android.
…date Android dependencies. (flutter#1571)

* Update Android dependencies to 16.1.8
* Replace domain with uriPrefix
* All the plugins that have firebase_core dependencies have been updated to the firebase_core release that was just published (flutter#1576)
* Updated firebase_auth dependency on firebase_dynamic_links to fix compile failures.
* Updated firebase_messaging to handle breaking change on Android.
* Increase cloud_firestore dependency on iOS to ensure FieldValue.increment availability
* Fix break in firebase_analytics CocoaPod
Also changes how the example app handles state to avoid bugs with
consumables not getting updated based on purchasing. Previously the app
was relying on FutureBuilders, but these didn't handle state updates
over time and across Widgets correctly.
…f FirebaseAuth (flutter#1584)

* Migrated linkWithCredential function to user object
* Add support for getApplicationLibraryDirectory
…er#1585)

The MediaScanConnection.scanFile callback is invoked on a background thread.
However, MethodChannel results must be provided on the platform thread.

Fixes flutter/flutter#32315
Previously the code was failing to propagate errors from BillingClient
if there were no actual purchases to attach them to.

Also updates the error code. This situation can arise in more situations
than just restoring purchases.
…utter#1588)

Theoretically this API should only be called once, but there's an open
issue that suggests that in some cases this is being triggered multiple
times. Check for multiple calls and bail instead of sending multiple
replies.
Previously the buy methods were just returning `void`, so the immediate
response of `BillingClient#launchBillingFlow` was unaccessible. Change
it to return a `Future<bool>` and return whether or not the launch flow
succeeded in google_play_connection. Always return true in
app_store_connection since there's no equivalent status there.
@shaqian shaqian merged commit bac2aa6 into shaqian:shaqian/webview May 14, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.