changing package name back

This commit is contained in:
Dominik 2012-04-14 16:18:06 +02:00
parent 30b6cc60f2
commit e95ec50b46
80 changed files with 314 additions and 302 deletions

View file

@ -2,12 +2,12 @@
<!-- Copyright (C) 2010 Thialfihar <thi@thialfihar.org> Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.apg"
package="org.thialfihar.android.apg"
android:installLocation="auto"
android:versionCode="50"
android:versionName="1.1" >
android:versionName="2.0" >
<!-- APG Plus starting with versionCode 50! -->
<!-- APG 2 starting with versionCode 50! -->
<uses-sdk
android:minSdkVersion="7"
@ -18,12 +18,12 @@
<uses-permission android:name="com.fsck.k9.permission.READ_ATTACHMENT" />
<permission
android:name="org.apg.permission.READ_KEY_DETAILS"
android:name="org.thialfihar.android.apg.permission.READ_KEY_DETAILS"
android:description="@string/permission_read_key_details_description"
android:label="@string/permission_read_key_details_label"
android:protectionLevel="dangerous" />
<permission
android:name="org.apg.permission.STORE_BLOBS"
android:name="org.thialfihar.android.apg.permission.STORE_BLOBS"
android:description="@string/permission_store_blobs_description"
android:label="@string/permission_store_blobs_label"
android:protectionLevel="dangerous" />
@ -78,8 +78,8 @@
android:uiOptions="splitActionBarWhenNarrow"
android:windowSoftInputMode="stateHidden" >
<intent-filter>
<action android:name="org.apg.intent.CREATE_KEY" />
<action android:name="org.apg.intent.EDIT_KEY" />
<action android:name="org.thialfihar.android.apg.intent.CREATE_KEY" />
<action android:name="org.thialfihar.android.apg.intent.EDIT_KEY" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
@ -91,7 +91,7 @@
android:launchMode="singleTop"
android:uiOptions="splitActionBarWhenNarrow" >
<intent-filter>
<action android:name="org.apg.intent.SELECT_PUBLIC_KEYS" />
<action android:name="org.thialfihar.android.apg.intent.SELECT_PUBLIC_KEYS" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
@ -109,7 +109,7 @@
android:label="@string/title_selectSignature"
android:launchMode="singleTop" >
<intent-filter>
<action android:name="org.apg.intent.SELECT_SECRET_KEY" />
<action android:name="org.thialfihar.android.apg.intent.SELECT_SECRET_KEY" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
@ -128,10 +128,10 @@
android:uiOptions="splitActionBarWhenNarrow"
android:windowSoftInputMode="stateHidden" >
<intent-filter>
<action android:name="org.apg.intent.ENCRYPT" />
<action android:name="org.apg.intent.ENCRYPT_FILE" />
<action android:name="org.apg.intent.ENCRYPT_AND_RETURN" />
<action android:name="org.apg.intent.GENERATE_SIGNATURE" />
<action android:name="org.thialfihar.android.apg.intent.ENCRYPT" />
<action android:name="org.thialfihar.android.apg.intent.ENCRYPT_FILE" />
<action android:name="org.thialfihar.android.apg.intent.ENCRYPT_AND_RETURN" />
<action android:name="org.thialfihar.android.apg.intent.GENERATE_SIGNATURE" />
<category android:name="android.intent.category.DEFAULT" />
@ -145,9 +145,9 @@
android:uiOptions="splitActionBarWhenNarrow"
android:windowSoftInputMode="stateHidden" >
<intent-filter>
<action android:name="org.apg.intent.DECRYPT" />
<action android:name="org.apg.intent.DECRYPT_FILE" />
<action android:name="org.apg.intent.DECRYPT_AND_RETURN" />
<action android:name="org.thialfihar.android.apg.intent.DECRYPT" />
<action android:name="org.thialfihar.android.apg.intent.DECRYPT_FILE" />
<action android:name="org.thialfihar.android.apg.intent.DECRYPT_AND_RETURN" />
<category android:name="android.intent.category.DEFAULT" />
@ -220,18 +220,18 @@
android:label="@string/title_about"
android:theme="@style/Theme.Sherlock.Light.Dialog" />
<activity
android:name=".ui.HelpActivity"
android:name="org.thialfihar.android.apg.ui.HelpActivity"
android:label="@string/title_help" />
<service android:name=".Service" />
<service
android:name=".ApgService"
android:name="org.thialfihar.android.apg.ApgService"
android:enabled="true"
android:exported="true"
android:permission="org.apg.permission.READ_KEY_DETAILS"
android:permission="org.thialfihar.android.apg.permission.READ_KEY_DETAILS"
android:process=":remote" >
<intent-filter>
<action android:name="org.apg.IApgService" />
<action android:name="org.thialfihar.android.apg.IApgService" />
</intent-filter>
<meta-data
@ -241,12 +241,12 @@
<provider
android:name=".provider.DataProvider"
android:authorities="org.apg.provider"
android:readPermission="org.apg.permission.READ_KEY_DETAILS" />
android:authorities="org.thialfihar.android.apg.provider"
android:readPermission="org.thialfihar.android.apg.permission.READ_KEY_DETAILS" />
<provider
android:name=".provider.ApgServiceBlobProvider"
android:authorities="org.apg.provider.apgserviceblobprovider"
android:permission="org.apg.permission.STORE_BLOBS" />
android:name="org.thialfihar.android.apg.provider.ApgServiceBlobProvider"
android:authorities="org.thialfihar.android.apg.provider.apgserviceblobprovider"
android:permission="org.thialfihar.android.apg.permission.STORE_BLOBS" />
</application>
</manifest>

View file

@ -15,7 +15,7 @@
limitations under the License.
-->
<org.apg.ui.widget.KeyEditor xmlns:android="http://schemas.android.com/apk/res/android"
<org.thialfihar.android.apg.ui.widget.KeyEditor xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
@ -131,4 +131,4 @@
android:layout_height="1dip"
android:background="?android:attr/listDivider" />
</org.apg.ui.widget.KeyEditor>
</org.thialfihar.android.apg.ui.widget.KeyEditor>

View file

@ -15,7 +15,7 @@
limitations under the License.
-->
<org.apg.ui.widget.SectionView xmlns:android="http://schemas.android.com/apk/res/android"
<org.thialfihar.android.apg.ui.widget.SectionView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
@ -54,4 +54,4 @@
android:orientation="vertical"
android:paddingBottom="6dip" />
</org.apg.ui.widget.SectionView>
</org.thialfihar.android.apg.ui.widget.SectionView>

View file

@ -15,7 +15,7 @@
limitations under the License.
-->
<org.apg.ui.widget.UserIdEditor xmlns:android="http://schemas.android.com/apk/res/android"
<org.thialfihar.android.apg.ui.widget.UserIdEditor xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
@ -104,4 +104,4 @@
android:layout_height="1dip"
android:background="?android:attr/listDivider" />
</org.apg.ui.widget.UserIdEditor>
</org.thialfihar.android.apg.ui.widget.UserIdEditor>

View file

@ -14,7 +14,7 @@
limitations under the License.
-->
<org.apg.ui.widget.KeyServerEditor
<org.thialfihar.android.apg.ui.widget.KeyServerEditor
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
@ -49,4 +49,4 @@
android:layout_height="1dip"
android:background="?android:attr/listDivider"/>
</org.apg.ui.widget.KeyServerEditor>
</org.thialfihar.android.apg.ui.widget.KeyServerEditor>

View file

@ -20,7 +20,7 @@
android:layout_height="fill_parent"
android:orientation="vertical" >
<org.apg.ui.widget.DashboardLayout
<org.thialfihar.android.apg.ui.widget.DashboardLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
@ -66,7 +66,7 @@
android:drawableTop="@drawable/dashboard_help"
android:onClick="helpOnClick"
android:text="@string/dashboard_help" />
</org.apg.ui.widget.DashboardLayout>
</org.thialfihar.android.apg.ui.widget.DashboardLayout>
<!-- <LinearLayout -->
<!-- style="@android:style/ButtonBar" -->

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name" translate="false">APG+</string>
<string name="app_name" translate="false">APG</string>
<string name="about_url" translate="false">https://github.com/dschuermann/apg</string>
</resources>

View file

@ -327,10 +327,10 @@
<!-- about -->
<string name="about_description">Android Privacy Guard (APG) is a OpenPGP implementation for Android.\n\nAPG+ is a fork based on the original APG to introduce more features and a new user interface.</string>
<string name="about_description">Android Privacy Guard (APG) is a OpenPGP implementation for Android.</string>
<string name="about_license">License: Apache License 2.0</string>
<string name="about_version">Version:</string>
<string name="about_developer">Developer: Thialfihar (Main developer), Senecaso (QRCode, sign key, upload key), Markus Doits (AIDL), Oliver Runge, Dominik Schürmann (APG+ fork)</string>
<string name="about_developer">Developer: Thialfihar (Main developer), Senecaso (QRCode, sign key, upload key), Markus Doits (AIDL), Oliver Runge, Dominik Schürmann (New user interface)</string>
<!-- Dashboard -->
<string name="dashboard_manage_keys">Manage Keys</string>

View file

@ -18,7 +18,7 @@
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
<PreferenceCategory android:title="@string/section_general" >
<org.apg.ui.widget.IntegerListPreference
<org.thialfihar.android.apg.ui.widget.IntegerListPreference
android:entries="@array/pass_phrase_cache_ttl_entries"
android:entryValues="@array/pass_phrase_cache_ttl_values"
android:key="passPhraseCacheTtl"
@ -31,19 +31,19 @@
android:title="@string/label_keyServers" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/section_defaults" >
<org.apg.ui.widget.IntegerListPreference
<org.thialfihar.android.apg.ui.widget.IntegerListPreference
android:key="defaultEncryptionAlgorithm"
android:persistent="false"
android:title="@string/label_encryptionAlgorithm" />
<org.apg.ui.widget.IntegerListPreference
<org.thialfihar.android.apg.ui.widget.IntegerListPreference
android:key="defaultHashAlgorithm"
android:persistent="false"
android:title="@string/label_hashAlgorithm" />
<org.apg.ui.widget.IntegerListPreference
<org.thialfihar.android.apg.ui.widget.IntegerListPreference
android:key="defaultMessageCompression"
android:persistent="false"
android:title="@string/label_messageCompression" />
<org.apg.ui.widget.IntegerListPreference
<org.thialfihar.android.apg.ui.widget.IntegerListPreference
android:key="defaultFileCompression"
android:persistent="false"
android:title="@string/label_fileCompression" />

View file

@ -14,20 +14,8 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import org.apg.KeyServer.AddKeyException;
import org.apg.provider.DataProvider;
import org.apg.provider.Database;
import org.apg.provider.KeyRings;
import org.apg.provider.Keys;
import org.apg.provider.UserIds;
import org.apg.ui.BaseActivity;
import org.apg.ui.widget.KeyEditor;
import org.apg.ui.widget.SectionView;
import org.apg.ui.widget.UserIdEditor;
import org.apg.util.IterableIterator;
import org.apg.util.Utils;
import org.spongycastle.bcpg.ArmoredInputStream;
import org.spongycastle.bcpg.ArmoredOutputStream;
import org.spongycastle.bcpg.BCPGOutputStream;
@ -65,7 +53,19 @@ import org.spongycastle.openpgp.PGPSignatureSubpacketGenerator;
import org.spongycastle.openpgp.PGPSignatureSubpacketVector;
import org.spongycastle.openpgp.PGPUtil;
import org.spongycastle.openpgp.PGPV3SignatureGenerator;
import org.apg.R;
import org.thialfihar.android.apg.KeyServer.AddKeyException;
import org.thialfihar.android.apg.provider.DataProvider;
import org.thialfihar.android.apg.provider.Database;
import org.thialfihar.android.apg.provider.KeyRings;
import org.thialfihar.android.apg.provider.Keys;
import org.thialfihar.android.apg.provider.UserIds;
import org.thialfihar.android.apg.ui.BaseActivity;
import org.thialfihar.android.apg.ui.widget.KeyEditor;
import org.thialfihar.android.apg.ui.widget.SectionView;
import org.thialfihar.android.apg.ui.widget.UserIdEditor;
import org.thialfihar.android.apg.util.IterableIterator;
import org.thialfihar.android.apg.util.Utils;
import org.thialfihar.android.apg.R;
import android.app.Activity;
import android.content.Context;
@ -109,8 +109,8 @@ import java.util.Vector;
import java.util.regex.Pattern;
public class Apg {
private static final String PACKAGE_NAME = "org.apg";
private static final String INTENT_PREFIX = "org.apg.intent.";
private static final String PACKAGE_NAME = "org.thialfihar.android.apg";
private static final String INTENT_PREFIX = "org.thialfihar.android.apg.intent.";
public static class Intent {
public static final String DECRYPT = INTENT_PREFIX + "DECRYPT";

View file

@ -12,7 +12,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
@ -25,10 +25,11 @@ import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import org.apg.provider.KeyRings;
import org.apg.provider.Keys;
import org.apg.provider.UserIds;
import org.apg.IApgService;
import org.thialfihar.android.apg.IApgService;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.provider.KeyRings;
import org.thialfihar.android.apg.provider.Keys;
import org.thialfihar.android.apg.provider.UserIds;
import android.content.ContentResolver;
import android.content.Intent;

View file

@ -14,13 +14,13 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import org.spongycastle.jce.provider.BouncyCastleProvider;
import org.spongycastle.openpgp.PGPException;
import org.spongycastle.openpgp.PGPPrivateKey;
import org.spongycastle.openpgp.PGPSecretKey;
import org.apg.R;
import org.thialfihar.android.apg.R;
import android.app.Activity;
import android.app.AlertDialog;

View file

@ -12,7 +12,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
public class CachedPassPhrase {
public final long timestamp;

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import android.os.Environment;

View file

@ -12,7 +12,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import java.io.ByteArrayOutputStream;
import java.io.FileNotFoundException;
@ -20,8 +20,8 @@ import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import org.apg.Apg.GeneralException;
import org.apg.R;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.Apg.GeneralException;
import android.content.Context;
import android.os.Environment;

View file

@ -12,7 +12,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import java.io.ByteArrayInputStream;
import java.io.File;
@ -21,8 +21,8 @@ import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import org.apg.Apg.GeneralException;
import org.apg.R;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.Apg.GeneralException;
import android.content.Context;
import android.net.Uri;

View file

@ -14,9 +14,9 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import org.apg.R;
import org.thialfihar.android.apg.R;
import android.app.Activity;
import android.app.AlertDialog;

View file

@ -12,7 +12,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import java.io.ByteArrayOutputStream;
import java.io.IOException;

View file

@ -1,4 +1,4 @@
package org.apg;
package org.thialfihar.android.apg;
interface IApgService {

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import org.spongycastle.bcpg.CompressionAlgorithmTags;

View file

@ -12,7 +12,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import java.io.InputStream;

View file

@ -12,7 +12,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import java.io.Serializable;
import java.util.Date;

View file

@ -12,7 +12,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
public class PausableThread extends Thread {
private boolean mPaused = false;

View file

@ -12,7 +12,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import java.io.IOException;
import java.io.InputStream;

View file

@ -12,7 +12,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import org.spongycastle.bcpg.HashAlgorithmTags;
import org.spongycastle.openpgp.PGPEncryptedData;

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import java.math.BigInteger;

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
public interface ProgressDialogUpdater {
void setProgress(String message, int current, int total);

View file

@ -12,7 +12,7 @@
* limitations under the License.
*/
package org.apg;
package org.thialfihar.android.apg;
import android.content.Intent;
import android.os.Binder;

View file

@ -12,9 +12,9 @@
* limitations under the License.
*/
package org.apg.provider;
package org.thialfihar.android.apg.provider;
import org.apg.ApgService;
import org.thialfihar.android.apg.ApgService;
import android.content.ContentUris;
import android.content.ContentValues;

View file

@ -12,10 +12,10 @@
* limitations under the License.
*/
package org.apg.provider;
package org.thialfihar.android.apg.provider;
import org.apg.ApgService;
import org.apg.Constants;
import org.thialfihar.android.apg.ApgService;
import org.thialfihar.android.apg.Constants;
import android.content.ContentProvider;
import android.content.ContentValues;
@ -34,7 +34,7 @@ public class ApgServiceBlobProvider extends ContentProvider {
private static final String TAG = "ApgServiceBlobProvider";
public static final Uri CONTENT_URI = Uri.parse("content://org.apg.provider.apgserviceblobprovider");
public static final Uri CONTENT_URI = Uri.parse("content://org.thialfihar.android.apg.provider.apgserviceblobprovider");
private static final String COLUMN_KEY = "key";

View file

@ -14,13 +14,13 @@
* limitations under the License.
*/
package org.apg.provider;
package org.thialfihar.android.apg.provider;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.HashMap;
import org.apg.Id;
import org.thialfihar.android.apg.Id;
import android.content.ContentProvider;
import android.content.ContentValues;
@ -33,7 +33,7 @@ import android.os.ParcelFileDescriptor;
import android.text.TextUtils;
public class DataProvider extends ContentProvider {
public static final String AUTHORITY = "org.apg.provider";
public static final String AUTHORITY = "org.thialfihar.android.apg.provider";
private static final int PUBLIC_KEY_RING = 101;
private static final int PUBLIC_KEY_RING_ID = 102;

View file

@ -12,16 +12,16 @@
* limitations under the License.
*/
package org.apg.provider;
package org.thialfihar.android.apg.provider;
import org.apg.Apg;
import org.apg.Id;
import org.apg.util.IterableIterator;
import org.spongycastle.openpgp.PGPException;
import org.spongycastle.openpgp.PGPPublicKey;
import org.spongycastle.openpgp.PGPPublicKeyRing;
import org.spongycastle.openpgp.PGPSecretKey;
import org.spongycastle.openpgp.PGPSecretKeyRing;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.util.IterableIterator;
import android.content.ContentValues;
import android.content.Context;
@ -47,7 +47,7 @@ public class Database extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "apg";
private static final int DATABASE_VERSION = 2;
public static final String AUTHORITY = "org.apg.database";
public static final String AUTHORITY = "org.thialfihar.android.apg.database";
public static HashMap<String, String> sKeyRingsProjection;
public static HashMap<String, String> sKeysProjection;

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.apg.provider;
package org.thialfihar.android.apg.provider;
import android.provider.BaseColumns;

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.apg.provider;
package org.thialfihar.android.apg.provider;
import android.provider.BaseColumns;

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.apg.provider;
package org.thialfihar.android.apg.provider;
import android.provider.BaseColumns;

View file

@ -0,0 +1,12 @@
/**
* TODO:
* - Reimplement all the threads in the activitys as intents in this intentService
* - This IntentService stopps itself after an action is executed
*/
package org.thialfihar.android.apg.service;
public class ApgService {
}

View file

@ -12,10 +12,10 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import org.apg.Constants;
import org.apg.R;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.Constants;
import android.app.Activity;
import android.content.pm.PackageInfo;

View file

@ -14,21 +14,21 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import org.apg.Apg;
import org.apg.AskForSecretKeyPassPhrase;
import org.apg.Constants;
import org.apg.Id;
import org.apg.PausableThread;
import org.apg.Preferences;
import org.apg.ProgressDialogUpdater;
import org.apg.Service;
import org.apg.R;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.AskForSecretKeyPassPhrase;
import org.thialfihar.android.apg.Constants;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.PausableThread;
import org.thialfihar.android.apg.Preferences;
import org.thialfihar.android.apg.ProgressDialogUpdater;
import org.thialfihar.android.apg.Service;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.app.SherlockActivity;

View file

@ -14,22 +14,22 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import org.apg.Apg;
import org.apg.Constants;
import org.apg.DataDestination;
import org.apg.DataSource;
import org.apg.FileDialog;
import org.apg.Id;
import org.apg.InputData;
import org.apg.PausableThread;
import org.apg.provider.DataProvider;
import org.apg.util.Compatibility;
import org.spongycastle.jce.provider.BouncyCastleProvider;
import org.spongycastle.openpgp.PGPException;
import org.spongycastle.openpgp.PGPPublicKeyRing;
import org.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Constants;
import org.thialfihar.android.apg.DataDestination;
import org.thialfihar.android.apg.DataSource;
import org.thialfihar.android.apg.FileDialog;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.InputData;
import org.thialfihar.android.apg.PausableThread;
import org.thialfihar.android.apg.provider.DataProvider;
import org.thialfihar.android.apg.util.Compatibility;
import org.thialfihar.android.apg.R;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.view.Menu;

View file

@ -15,19 +15,19 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import org.apg.Apg;
import org.apg.Constants;
import org.apg.Id;
import org.apg.provider.Database;
import org.apg.ui.widget.KeyEditor;
import org.apg.ui.widget.SectionView;
import org.apg.util.IterableIterator;
import org.spongycastle.openpgp.PGPException;
import org.spongycastle.openpgp.PGPSecretKey;
import org.spongycastle.openpgp.PGPSecretKeyRing;
import org.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Constants;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.provider.Database;
import org.thialfihar.android.apg.ui.widget.KeyEditor;
import org.thialfihar.android.apg.ui.widget.SectionView;
import org.thialfihar.android.apg.util.IterableIterator;
import org.thialfihar.android.apg.R;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.view.Menu;
@ -176,8 +176,6 @@ public class EditKeyActivity extends BaseActivity {
keys.add(subKey);
keysUsages.add(Id.choice.usage.encrypt_only);
// define usage of this key
} catch (Exception e) {
Log.e(Constants.TAG, "Creating initial key failed: +" + e);
}

View file

@ -14,24 +14,24 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import org.apg.Apg;
import org.apg.Constants;
import org.apg.DataDestination;
import org.apg.DataSource;
import org.apg.FileDialog;
import org.apg.Id;
import org.apg.InputData;
import org.apg.provider.DataProvider;
import org.apg.util.Choice;
import org.apg.util.Compatibility;
import org.spongycastle.openpgp.PGPException;
import org.spongycastle.openpgp.PGPPublicKey;
import org.spongycastle.openpgp.PGPPublicKeyRing;
import org.spongycastle.openpgp.PGPSecretKey;
import org.spongycastle.openpgp.PGPSecretKeyRing;
import org.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Constants;
import org.thialfihar.android.apg.DataDestination;
import org.thialfihar.android.apg.DataSource;
import org.thialfihar.android.apg.FileDialog;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.InputData;
import org.thialfihar.android.apg.provider.DataProvider;
import org.thialfihar.android.apg.util.Choice;
import org.thialfihar.android.apg.util.Compatibility;
import org.thialfihar.android.apg.R;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.view.Menu;

View file

@ -12,7 +12,7 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import java.io.ByteArrayInputStream;
import java.io.FileNotFoundException;
@ -20,10 +20,10 @@ import java.io.IOException;
import java.io.InputStream;
import java.util.Vector;
import org.apg.Apg;
import org.apg.Id;
import org.apg.util.Choice;
import org.apg.R;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.util.Choice;
import android.content.Intent;
import android.net.Uri;

View file

@ -14,10 +14,10 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import org.apg.R;
import org.apg.util.Utils;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.util.Utils;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.app.SherlockActivity;

View file

@ -12,19 +12,19 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import org.apg.Apg;
import org.apg.Constants;
import org.apg.HkpKeyServer;
import org.apg.Id;
import org.apg.KeyServer.QueryException;
import org.spongycastle.openpgp.PGPKeyRing;
import org.spongycastle.openpgp.PGPPublicKeyRing;
import org.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Constants;
import org.thialfihar.android.apg.HkpKeyServer;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.KeyServer.QueryException;
import org.thialfihar.android.apg.R;
import android.content.Intent;
import android.os.Bundle;

View file

@ -14,20 +14,20 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import org.apg.Apg;
import org.apg.Constants;
import org.apg.FileDialog;
import org.apg.Id;
import org.apg.InputData;
import org.apg.provider.KeyRings;
import org.apg.provider.Keys;
import org.apg.provider.UserIds;
import org.spongycastle.openpgp.PGPException;
import org.spongycastle.openpgp.PGPPublicKeyRing;
import org.spongycastle.openpgp.PGPSecretKeyRing;
import org.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Constants;
import org.thialfihar.android.apg.FileDialog;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.InputData;
import org.thialfihar.android.apg.provider.KeyRings;
import org.thialfihar.android.apg.provider.Keys;
import org.thialfihar.android.apg.provider.UserIds;
import org.thialfihar.android.apg.R;
import com.actionbarsherlock.view.MenuItem;

View file

@ -12,15 +12,15 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import org.apg.Apg;
import org.apg.Constants;
import org.apg.HkpKeyServer;
import org.apg.Id;
import org.spongycastle.openpgp.PGPKeyRing;
import org.spongycastle.openpgp.PGPPublicKeyRing;
import org.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Constants;
import org.thialfihar.android.apg.HkpKeyServer;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.R;
import com.actionbarsherlock.view.MenuItem;

View file

@ -14,15 +14,15 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import java.util.Vector;
import org.apg.Apg;
import org.apg.ui.widget.Editor;
import org.apg.ui.widget.KeyServerEditor;
import org.apg.ui.widget.Editor.EditorListener;
import org.apg.R;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.ui.widget.Editor;
import org.thialfihar.android.apg.ui.widget.KeyServerEditor;
import org.thialfihar.android.apg.ui.widget.Editor.EditorListener;
import com.actionbarsherlock.view.Menu;

View file

@ -12,20 +12,20 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import java.util.List;
import java.util.Vector;
import org.apg.Apg;
import org.apg.Constants;
import org.apg.HkpKeyServer;
import org.apg.Id;
import org.apg.KeyServer.InsufficientQuery;
import org.apg.KeyServer.KeyInfo;
import org.apg.KeyServer.QueryException;
import org.apg.KeyServer.TooManyResponses;
import org.apg.R;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Constants;
import org.thialfihar.android.apg.HkpKeyServer;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.KeyServer.InsufficientQuery;
import org.thialfihar.android.apg.KeyServer.KeyInfo;
import org.thialfihar.android.apg.KeyServer.QueryException;
import org.thialfihar.android.apg.KeyServer.TooManyResponses;
import com.actionbarsherlock.view.MenuItem;

View file

@ -14,14 +14,14 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import java.util.Vector;
import java.util.regex.Matcher;
import org.apg.Apg;
import org.apg.Preferences;
import org.apg.R;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Preferences;
import android.app.ListActivity;
import android.content.Context;

View file

@ -14,14 +14,14 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import java.security.Security;
import org.apg.Apg;
import org.apg.Id;
import org.spongycastle.jce.provider.BouncyCastleProvider;
import org.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.R;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.view.Menu;

View file

@ -14,16 +14,16 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import org.apg.Apg;
import org.apg.Constants;
import org.apg.Id;
import org.apg.Preferences;
import org.apg.ui.widget.IntegerListPreference;
import org.spongycastle.bcpg.HashAlgorithmTags;
import org.spongycastle.openpgp.PGPEncryptedData;
import org.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Constants;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.Preferences;
import org.thialfihar.android.apg.ui.widget.IntegerListPreference;
import org.thialfihar.android.apg.R;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.app.SherlockPreferenceActivity;

View file

@ -14,13 +14,13 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import org.apg.Apg;
import org.apg.Constants;
import org.apg.Id;
import org.spongycastle.openpgp.PGPPublicKeyRing;
import org.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Constants;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.R;
import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuItem;

View file

@ -14,13 +14,13 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import org.apg.Apg;
import org.apg.AskForSecretKeyPassPhrase;
import org.apg.Constants;
import org.apg.Id;
import org.apg.R;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.AskForSecretKeyPassPhrase;
import org.thialfihar.android.apg.Constants;
import org.thialfihar.android.apg.Id;
import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuItem;

View file

@ -14,14 +14,14 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import java.util.Vector;
import org.apg.Apg;
import org.apg.Id;
import org.apg.R;
import org.apg.ui.widget.SelectPublicKeyListAdapter;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.ui.widget.SelectPublicKeyListAdapter;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.view.Menu;

View file

@ -14,12 +14,12 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import org.apg.Apg;
import org.apg.Id;
import org.apg.R;
import org.apg.ui.widget.SelectSecretKeyListAdapter;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.ui.widget.SelectSecretKeyListAdapter;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.view.Menu;

View file

@ -12,17 +12,13 @@
* limitations under the License.
*/
package org.apg.ui;
package org.thialfihar.android.apg.ui;
import java.security.NoSuchAlgorithmException;
import java.security.NoSuchProviderException;
import java.security.SignatureException;
import java.util.Iterator;
import org.apg.Apg;
import org.apg.Constants;
import org.apg.HkpKeyServer;
import org.apg.Id;
import org.spongycastle.jce.provider.BouncyCastleProvider;
import org.spongycastle.openpgp.PGPException;
import org.spongycastle.openpgp.PGPPrivateKey;
@ -34,7 +30,11 @@ import org.spongycastle.openpgp.PGPSignatureGenerator;
import org.spongycastle.openpgp.PGPSignatureSubpacketGenerator;
import org.spongycastle.openpgp.PGPSignatureSubpacketVector;
import org.spongycastle.openpgp.PGPUtil;
import org.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Constants;
import org.thialfihar.android.apg.HkpKeyServer;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.R;
import com.actionbarsherlock.view.MenuItem;

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.apg.ui.widget;
package org.thialfihar.android.apg.ui.widget;
import android.content.Context;
import android.util.AttributeSet;

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.apg.ui.widget;
package org.thialfihar.android.apg.ui.widget;
public interface Editor {
public interface EditorListener {

View file

@ -14,7 +14,7 @@
* the License.
*/
package org.apg.ui.widget;
package org.thialfihar.android.apg.ui.widget;
import android.content.Context;
import android.preference.ListPreference;

View file

@ -14,14 +14,14 @@
* limitations under the License.
*/
package org.apg.ui.widget;
package org.thialfihar.android.apg.ui.widget;
import org.apg.Apg;
import org.apg.Id;
import org.apg.util.Choice;
import org.spongycastle.openpgp.PGPPublicKey;
import org.spongycastle.openpgp.PGPSecretKey;
import org.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.util.Choice;
import org.thialfihar.android.apg.R;
import android.app.DatePickerDialog;
import android.app.Dialog;

View file

@ -14,9 +14,9 @@
* limitations under the License.
*/
package org.apg.ui.widget;
package org.thialfihar.android.apg.ui.widget;
import org.apg.R;
import org.thialfihar.android.apg.R;
import android.content.Context;
import android.util.AttributeSet;

View file

@ -14,15 +14,15 @@
* limitations under the License.
*/
package org.apg.ui.widget;
package org.thialfihar.android.apg.ui.widget;
import org.apg.Apg;
import org.apg.Id;
import org.apg.ui.widget.Editor.EditorListener;
import org.apg.util.Choice;
import org.spongycastle.openpgp.PGPException;
import org.spongycastle.openpgp.PGPSecretKey;
import org.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.ui.widget.Editor.EditorListener;
import org.thialfihar.android.apg.util.Choice;
import org.thialfihar.android.apg.R;
import android.app.AlertDialog;
import android.app.ProgressDialog;

View file

@ -14,16 +14,16 @@
* limitations under the License.
*/
package org.apg.ui.widget;
package org.thialfihar.android.apg.ui.widget;
import java.util.Date;
import org.apg.Apg;
import org.apg.Id;
import org.apg.provider.KeyRings;
import org.apg.provider.Keys;
import org.apg.provider.UserIds;
import org.apg.R;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.provider.KeyRings;
import org.thialfihar.android.apg.provider.Keys;
import org.thialfihar.android.apg.provider.UserIds;
import android.app.Activity;
import android.content.Context;

View file

@ -12,16 +12,16 @@
* limitations under the License.
*/
package org.apg.ui.widget;
package org.thialfihar.android.apg.ui.widget;
import java.util.Date;
import org.apg.Apg;
import org.apg.Id;
import org.apg.provider.KeyRings;
import org.apg.provider.Keys;
import org.apg.provider.UserIds;
import org.apg.R;
import org.thialfihar.android.apg.R;
import org.thialfihar.android.apg.Apg;
import org.thialfihar.android.apg.Id;
import org.thialfihar.android.apg.provider.KeyRings;
import org.thialfihar.android.apg.provider.Keys;
import org.thialfihar.android.apg.provider.UserIds;
import android.app.Activity;
import android.content.Context;

View file

@ -14,12 +14,12 @@
* limitations under the License.
*/
package org.apg.ui.widget;
package org.thialfihar.android.apg.ui.widget;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apg.R;
import org.thialfihar.android.apg.R;
import android.content.Context;
import android.util.AttributeSet;

View file

@ -14,10 +14,10 @@
* limitations under the License.
*/
package org.apg.util;
package org.thialfihar.android.apg.util;
import org.apg.util.ApgConInterface.OnCallFinishListener;
import org.apg.IApgService;
import org.thialfihar.android.apg.IApgService;
import org.thialfihar.android.apg.util.ApgConInterface.OnCallFinishListener;
import android.content.ComponentName;
import android.content.ContentResolver;
@ -60,7 +60,7 @@ public class ApgCon {
private final static String TAG = "ApgCon";
private final static int API_VERSION = 2; // aidl api-version it expects
private final static String BLOB_URI = "content://org.apg.provider.apgserviceblobprovider";
private final static String BLOB_URI = "content://org.thialfihar.android.apg.provider.apgserviceblobprovider";
/**
* How many seconds to wait for a connection to AGP when connecting.
@ -175,7 +175,7 @@ public class ApgCon {
error tmpError = null;
try {
if( LOCAL_LOGV ) Log.v(TAG, "Searching for the right APG version");
ServiceInfo apgServices[] = ctx.getPackageManager().getPackageInfo("org.apg",
ServiceInfo apgServices[] = ctx.getPackageManager().getPackageInfo("org.thialfihar.android.apg",
PackageManager.GET_SERVICES | PackageManager.GET_META_DATA).services;
if (apgServices == null) {
Log.e(TAG, "Could not fetch services");
@ -184,7 +184,7 @@ public class ApgCon {
boolean apgServiceFound = false;
for (ServiceInfo inf : apgServices) {
if( LOCAL_LOGV ) Log.v(TAG, "Found service of APG: " + inf.name);
if (inf.name.equals("org.apg.ApgService")) {
if (inf.name.equals("org.thialfihar.android.apg.ApgService")) {
apgServiceFound = true;
if (inf.metaData == null) {
Log.w(TAG, "Could not determine ApgService API");

View file

@ -12,7 +12,7 @@
* limitations under the License.
*/
package org.apg.util;
package org.thialfihar.android.apg.util;
public interface ApgConInterface {
public static interface OnCallFinishListener {

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.apg.util;
package org.thialfihar.android.apg.util;
public class Choice {
private String mName;

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.apg.util;
package org.thialfihar.android.apg.util;
import java.lang.reflect.Method;

View file

@ -1,4 +1,4 @@
package org.apg.util;
package org.thialfihar.android.apg.util;
public class Constants {
public static final String TAG = "APG";

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.apg.util;
package org.thialfihar.android.apg.util;
import java.util.Iterator;

View file

@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.apg.util;
package org.thialfihar.android.apg.util;
import java.io.ByteArrayOutputStream;
import java.io.IOException;

View file

@ -1,11 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.apg.api_demo"
package="org.thialfihar.android.apg.demo"
android:versionCode="1"
android:versionName="1.0" >
<!-- permission to access provider and service, intents are public! -->
<uses-permission android:name="org.apg.permission.READ_KEY_DETAILS" />
<uses-permission android:name="org.thialfihar.android.apg.permission.READ_KEY_DETAILS" />
<uses-sdk
android:minSdkVersion="7"
@ -25,7 +25,8 @@
</activity>
<activity
android:name=".IntentDemoActivity"
android:label="Intent Demo 1" />
android:label="Intent Demo 1"
android:windowSoftInputMode="stateHidden" />
</application>
</manifest>

View file

@ -14,9 +14,9 @@
* limitations under the License.
*/
package org.apg.api_demo;
package org.thialfihar.android.apg.demo;
import org.apg.api_demo.R;
import org.thialfihar.android.apg.demo.R;
import android.app.Activity;
import android.content.Intent;

View file

@ -14,11 +14,11 @@
* limitations under the License.
*/
package org.apg.api_demo;
package org.thialfihar.android.apg.demo;
import org.apg.api_demo.R;
import org.apg.integration.ApgData;
import org.apg.integration.ApgIntentHelper;
import org.thialfihar.android.apg.demo.R;
import org.thialfihar.android.apg.integration.ApgData;
import org.thialfihar.android.apg.integration.ApgIntentHelper;
import android.app.Activity;
import android.content.Intent;

View file

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.apg.integration"
package="org.thialfihar.android.apg.integration"
android:versionCode="1"
android:versionName="1.0" >

View file

@ -15,7 +15,7 @@
* limitations under the License.
*/
package org.apg.integration;
package org.thialfihar.android.apg.integration;
import java.io.Serializable;
import java.util.Arrays;

View file

@ -15,7 +15,7 @@
* limitations under the License.
*/
package org.apg.integration;
package org.thialfihar.android.apg.integration;
import java.util.ArrayList;
import java.util.List;

View file

@ -15,17 +15,17 @@
* limitations under the License.
*/
package org.apg.integration;
package org.thialfihar.android.apg.integration;
import android.net.Uri;
public class Constants {
public static final String NAME = "apg";
public static final String APG_PACKAGE_NAME = "org.apg";
public static final String APG_PACKAGE_NAME = "org.thialfihar.android.apg";
public static final int MIN_REQUIRED_VERSION = 50;
public static final String AUTHORITY = "org.apg.provider";
public static final String AUTHORITY = "org.thialfihar.android.apg.provider";
public static final Uri CONTENT_URI_SECRET_KEY_RING_BY_KEY_ID = Uri.parse("content://"
+ AUTHORITY + "/key_rings/secret/key_id/");
public static final Uri CONTENT_URI_SECRET_KEY_RING_BY_EMAILS = Uri.parse("content://"
@ -36,7 +36,7 @@ public class Constants {
public static final Uri CONTENT_URI_PUBLIC_KEY_RING_BY_EMAILS = Uri.parse("content://"
+ AUTHORITY + "/key_rings/public/emails/");
public static final String APG_INTENT_PREFIX = "org.apg.intent.";
public static final String APG_INTENT_PREFIX = "org.thialfihar.android.apg.intent.";
public static class Intent {
public static final String DECRYPT = APG_INTENT_PREFIX + "DECRYPT";

View file

@ -15,7 +15,7 @@
* limitations under the License.
*/
package org.apg.integration;
package org.thialfihar.android.apg.integration;
import android.content.Context;
import android.content.pm.PackageInfo;