Android™
Android™
Get the Signer Details of a Signed Email
See more Email Object Examples
Demonstrates the read-only Chilkat Email.SignedBy property. If the email was received digitally signed, this contains the fields of the signer certificate's Subject Distinguished Name, for example: US, 94105, California, San Francisco, 100 Market Street, Northwind Research LLC, Engineering, Avery Morgan. The values appear without the attribute-name prefixes (C=, ST=, L=, O=, CN=). It is intended for display or diagnostics; use LastSignerCert when the certificate object itself is needed.
Background: Every certificate identifies its owner with a Subject Distinguished Name (Subject DN) — a structured set of fields like Country (
C), State (ST), Organization (O), and Common Name (CN). The CN is typically the person or entity the certificate was issued to. SignedBy gives you a human-readable rendering of that identity, which is handy for showing "who signed this?" without needing to parse the certificate yourself.Chilkat Android™ Downloads
// Important: Don't forget to include the call to System.loadLibrary
// as shown at the bottom of this code sample.
package com.test;
import android.app.Activity;
import com.chilkatsoft.*;
import android.widget.TextView;
import android.os.Bundle;
public class SimpleActivity extends Activity {
private static final String TAG = "Chilkat";
// Called when the activity is first created.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
boolean success = false;
// Demonstrates the read-only Email.SignedBy property. If the email was received
// digitally signed, this contains the fields of the signer certificate's SubjectDN
// (without the C=, ST=, L=, O=, CN= attribute names).
CkEmail email = new CkEmail();
success = email.LoadEml("qa_data/eml/signed.eml");
if (success == false) {
Log.i(TAG, email.lastErrorText());
return true;
}
if (email.get_ReceivedSigned() == true) {
Log.i(TAG, "Signed by: " + email.signedBy());
}
else {
Log.i(TAG, "This email was not signed.");
}
// Note: Paths such as "qa_data/..." are relative local filesystem paths,
// relative to the current working directory of the running application.
}
static {
System.loadLibrary("chilkat");
// Note: If the incorrect library name is passed to System.loadLibrary,
// then you will see the following error message at application startup:
//"The application <your-application-name> has stopped unexpectedly. Please try again."
}
}