Reuses already existing infrastructure. The mMDNSFilteredDiscovery lambda
is called for every network service that supports #PRIVET_SERVICE. Then
the plugin checks the txt fields to make sure the printer is valid. The
check is not complete but good enough to make sure this is either a
cloud print capable printer or something that tries really hard.
Test: Connected to network with three printers, 2 GCP capable. Found the
two printers
Fixes: 35766193
Change-Id: I7c9180c8c154fa092fec5b943a94bad77da74c86
- Extract common part of MDNSFilterPlugin to common utils, MDNSFilteredDiscovery.java (other vendors can use it too)
- Refactor Samsung Print Recomendation Plugin to use MDNSFilteredDiscovery.java
- Add Mopria devices detection to Samsung Print Recomendation Plugin
*Samsung Print Service Plugin supports Mopria printers since v3.00.161011.
Test: Tested manually. Test app was developed to make sure that Samsung Print Recommendation plugin can find both Samsung and Mopria devices. Additionally MDNSFilterPlugin was tested on HP printers.
Change-Id: Idc0d311171495f879564336370a86f7a8890378b
Only minimal changes just to make it work together with the other
plugins.
Bug: 28908572
Change-Id: Icac226b45e8a6885036466451d0e9f54a3b3c640
(cherry picked from commit d97fdfd943295ea90d37b092e66b7ad1701587a1)
The code follows the same pattern as the HP and Mopria plugins. As this code is contributed by a 3rd I'd rather submit this as is and let the original submitter clean it up once it appears in AOSP.
The code should not affect anything outside of the package it is in. In the package the code is strongly isolated so that one plugin cannot cause issues with another plugin.
The code was minimally tested on a Samsung SCX-3406FW .
Bug: 28908572
Change-Id: I33c2673d06711902dbd0f1d82563cf5d3fbfe86a
(cherry picked from commit 83defde08560ae2f1c3426466a2aa3e6944d6b79)
The reported that:
- Name should be Koni_c_a Minolta
- kmkmkm should not be used as a mDNS identifier
Change-Id: I1ab1910f9a54a396c3bfa109266f6e805349d036
- Make util.MDnsUtils local to the mdnsFilter plugins
- Remove HP from the vendors recommended via the mdnsFilter plugin
- Copy in HP's code for HP and Mopria plugin
- Do not change any code, beside
- change "_ipp.tcp" to "_ipp._tcp"
- Change package name
- Do not use support lib annotations
- Reduce class visibility if possible
- Add AOSP copyright
- Make ServiceResolveQueue a proper sigleton
- Merge donottranslate and strings
- Add HP and Mopria plugin to RecommendationServiceImpl
- I needed to implement a multiplexer for NsdManager.DiscoveryListener
as we can only have 10 of them active at a time.
Change-Id: I61caa3f4822f9c013140721ed801d18e6839df55