Example #1
0
  /** {@inheritDoc} */
  @Override
  public void onCreate() {
    super.onCreate();
    Log.init("SMSdroid");
    Log.i(TAG, "init SMSdroid v" + this.getString(R.string.app_version));

    final SharedPreferences p = PreferenceManager.getDefaultSharedPreferences(this);
    int state = PackageManager.COMPONENT_ENABLED_STATE_DISABLED;
    if (p.getBoolean(PreferencesActivity.PREFS_ACTIVATE_SENDER, true)) {
      try {
        Cursor c =
            this.getContentResolver()
                .query(SenderActivity.URI_SENT, PROJECTION, null, null, "_id LIMIT 1");
        if (c == null) {
          Log.i(TAG, "disable .Sender: curor=null");
        } else if (SmsManager.getDefault() == null) {
          Log.i(TAG, "disable .Sender: SmsManager=null");
        } else {
          state = PackageManager.COMPONENT_ENABLED_STATE_ENABLED;
          Log.d(TAG, "enable .Sender");
        }
        if (c != null && !c.isClosed()) {
          c.close();
        }
      } catch (IllegalArgumentException e) {
        Log.e(TAG, "disable .Sender: " + e.getMessage(), e);
      } catch (SQLiteException e) {
        Log.e(TAG, "disable .Sender: " + e.getMessage(), e);
      }
    } else {
      Log.i(TAG, "disable .Sender");
    }
    this.getPackageManager()
        .setComponentEnabledSetting(
            new ComponentName(this, SenderActivity.class), state, PackageManager.DONT_KILL_APP);
  }