Xamarin DependencyService: System.MissingMethodException: Default constructor not found for [Interface]
<p>I am receiving this error when using the Dependency Service on a <code>Xamarin.Forms PCL</code>. I have seen answers to this error that involve <code>iOS</code> and the <code>Linker</code>.
However, I am running this on <code>Android</code> and the <code>Linker</code> is off. Debug mode as well.</p>

<p><em>The constructor it is telling me it cannot find the default constructor for the Interface in the PCL.</em></p>

<p>I thought it may have been an issue with some renaming I did (I used refactor tool and made sure all necessary changes were being made) so I deleted those folders/files and remade them. Still nothing :(</p>

<p>I have been searching and debugging this for hours. 
What are some things that could be causing this error? 
I am pretty sure my <code>DependencyService</code> Implementations are correct so I feel like it is something different. </p>

<p>Here is my related code.</p>

<h3>Interface:</h3>

<pre><code>namespace Enchantum.Functions
{
public interface PaymentProcessor
{

    void setUpCard(String cardNumber,
        int expirationMonth,
        int expirationYear,
        String CVC);

    Task cardTokenizer();

    void backendCardCharge();

}
</code></pre>

<h3>Android:</h3>

<pre><code>[assembly: Xamarin.Forms.Dependency(typeof(PaymentProcessor_Android))]

namespace Enchantum.Droid.Functions_Android
{
class PaymentProcessor_Android : PaymentProcessor
{
public PaymentProcessor_Android() { }

    private Card mCard;
    private Token mToken;

    public void setUpCard(String cardNumber, int expirationMonth,
        int expirationYear, String cvcCode)
    {
        Card card = new Card
        {
            Number = cardNumber,
            ExpiryMonth = expirationMonth,
            ExpiryYear = expirationYear,
            CVC = cvcCode
        };

        mCard = card;
    }

    public async Task cardTokenizer()
    {
        mToken = await StripeClient.CreateToken(mCard);
    }

    /*TODO: 
     * */

    public void backendCardCharge()
    {
        throw new NotImplementedException();
    }
</code></pre>

<h3>iOS:</h3>

<pre><code>[assembly: Xamarin.Forms.Dependency(typeof(PaymentProcessor_iOS))]

namespace Enchantum.iOS.Functions_iOS
{
class PaymentProcessor_iOS : PaymentProcessor
{
public PaymentProcessor_iOS() { }

    private Card mCard;
    private Token mToken;

    public void setUpCard(String cardNumber, int expirationMonth,
        int expirationYear, String cvcCode)
    {
        Card card = new Card
        {
            Number = cardNumber,
            ExpiryMonth = expirationMonth,
            ExpiryYear = expirationYear,
            CVC = cvcCode
        };

        mCard = card;

    }

    public async Task cardTokenizer()
    {
        mToken = await StripeClient.CreateToken(mCard);
    }

    /*TODO:*/
    public void backendCardCharge()
    {
        throw new NotImplementedException();
    }




}
</code></pre>

<h3>Implementation in a Xamarin.Form Content Page:</h3>

<pre><code>DependencyService.Get&lt;PaymentProcessor&gt;().setUpCard(
                    cardNumber,
                    expirationMonth,
                    expirationYear,
                    CVC);
</code></pre>

<p><strong>My error, again : "System.MissingMethodException: Default constructor not found for type Enchantum.Functions.PaymentProcessor"</strong></p>

<p>What is going wrong?</p>

<p><strong>P.S.</strong> Pardon my incorrect naming convention for the Interface as well some other mess. </p>