Bug 58690 - android.support.graphics.drawable.PathParser does not exist
Summary: android.support.graphics.drawable.PathParser does not exist
Status: IN_PROGRESS
Alias: None
Product: Android
Classification: Xamarin
Component: Bindings ()
Version: 7.3 (15.2)
Hardware: Macintosh Mac OS
: --- normal
Target Milestone: ---
Assignee: Redth
URL:
Depends on:
Blocks:
 
Reported: 2017-08-10 09:23 UTC by Eugene Kuznietsov
Modified: 2017-08-11 13:25 UTC (History)
5 users (show)

Tags:
Is this bug a regression?: ---
Last known good build:


Attachments
example to reproduce the issue (57.23 KB, application/zip)
2017-08-10 13:04 UTC, Eugene Kuznietsov
Details


Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.


Please create a new report for Bug 58690 on Developer Community or GitHub if you have new information to add and do not yet see a matching new report.

If the latest results still closely match this report, you can use the original description:

  • Export the original title and description: Developer Community HTML or GitHub Markdown
  • Copy the title and description into the new report. Adjust them to be up-to-date if needed.
  • Add your new information.

In special cases on GitHub you might also want the comments: GitHub Markdown with public comments

Related Links:
Status:
IN_PROGRESS

Description Eugene Kuznietsov 2017-08-10 09:23:40 UTC
got this error when trying to build project:
Project/obj/Debug/android/src/md5e696862e454c4d57de1dfe2d8d85bb0b/PathDataEvaluator.java(72,72): Error:  error: package android.support.graphics.drawable.PathParser does not exist
	public PathDataEvaluator (android.support.graphics.drawable.PathParser.PathDataNode[] p0) throws java.lang.Throwable
 (Project.Droid)

PathParser is placed in next package:
<package id="Xamarin.Android.Support.Vector.Drawable" version="25.3.1" targetFramework="monoandroid71" />

update to the latest (as for now) package v25.4.0.1 didn't help.
Comment 1 Marek Habersack 2017-08-10 11:01:16 UTC
Please create and attach a self-contained, small application project which reproduces the issue and reset bug status to NEW after having done so, thanks!
Comment 2 Eugene Kuznietsov 2017-08-10 13:04:25 UTC
Created attachment 24121 [details]
example to reproduce the issue
Comment 3 Eugene Kuznietsov 2017-08-10 13:06:28 UTC
added an example project, changing status back to 'new'
Comment 4 Jon Douglas [MSFT] 2017-08-10 18:46:33 UTC
This is an issue with our binding to support-vector-drawable. I'm not sure why our library is binding PathParser and PathParser.PathDataNode as these classes are not accessible outside the package due to no modifier. i.e.

class PathParser {

...

}

https://developer.android.com/reference/android/support/graphics/drawable/package-summary.html

Even Android Studio doesn't allow you to use these items from a quick test:

http://i.imgur.com/ogVVVKe.png

Thus I believe this is the culprit:

https://github.com/xamarin/AndroidSupportComponents/blob/master/vector-drawable/source/Transforms/Metadata.xml#L17

Where I believe it should not be modifying this to public as it shouldn't be available outside the package. However there are many other reasons why we might make this public for the sake of the generator to be gracious to us.

I'm sure someone else can chime in to what a potential fix would be.
Comment 5 Jon Dick 2017-08-10 20:02:10 UTC
I'm not sure there is much of a potential fix.  The bottom line seems to be the class is marked private in java so you can't actually use it.  We mark it public to work around a binding generator bug, so really the binding generator should be fixed to not require this hack.

Sorry but the type is not exposed and meant to be used by Google so you'll have to avoid using it for now.

Actions for me are to file a generator bug on this, and to decide if renaming this in the binding or somehow marking it as not usable is necessary.
Comment 6 Eugene Kuznietsov 2017-08-11 13:25:16 UTC
ok, thank you for your quick response! sorry for bothering you :)