Populate Default Ringer
The default ringer is not populated with the user's current settings after database creation closes #60
This commit is contained in:
@@ -2,8 +2,8 @@
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.TwentyCodes.android.LocationRinger"
|
||||
android:installLocation="internalOnly"
|
||||
android:versionCode="154"
|
||||
android:versionName="7d75bb1" >
|
||||
android:versionCode="156"
|
||||
android:versionName="ec9f0d1" >
|
||||
|
||||
<uses-sdk android:minSdkVersion="7"/>
|
||||
|
||||
|
||||
@@ -14,6 +14,8 @@ package com.TwentyCodes.android.LocationRinger.db;
|
||||
*/
|
||||
public interface DatabaseListener {
|
||||
|
||||
public void onDatabaseCreate();
|
||||
|
||||
public void onDatabaseUpgrade();
|
||||
|
||||
public void onDatabaseUpgradeComplete();
|
||||
|
||||
@@ -138,6 +138,8 @@ public class RingerDatabase {
|
||||
db.execSQL("insert into " + RINGER_TABLE + "(" + KEY_RINGER_NAME + ") values ('" + mContext.getString(R.string.default_ringer) + "')");
|
||||
db.execSQL("insert into " + RINGER_INFO_TABLE + "(" + KEY_RINGER_NAME + ", " + KEY + ", " + KEY_VALUE + ") values ('"
|
||||
+ mContext.getString(R.string.default_ringer) + "', '" + KEY_RINGER_DESCRIPTION + "', '" + mContext.getString(R.string.about_default_ringer) + "')");
|
||||
if(mListener != null)
|
||||
mListener.onDatabaseCreate();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -256,9 +258,9 @@ public class RingerDatabase {
|
||||
public final static String KEY_NOTIFICATION_RINGTONE = "notification_ringtone";
|
||||
@Deprecated
|
||||
public final static String KEY_RINGTONE_IS_SILENT = "ringtone_is_silent";
|
||||
|
||||
@Deprecated
|
||||
public final static String KEY_NOTIFICATION_IS_SILENT = "notification_is_silent";
|
||||
|
||||
public final static String KEY_IS_ENABLED = "is_enabled";
|
||||
public final static String KEY_RADIUS = "radius";
|
||||
public final static String KEY_RINGER_NAME = "ringer_name";
|
||||
|
||||
@@ -11,11 +11,17 @@ import android.annotation.SuppressLint;
|
||||
import android.app.Activity;
|
||||
import android.app.Dialog;
|
||||
import android.app.ProgressDialog;
|
||||
import android.bluetooth.BluetoothAdapter;
|
||||
import android.content.ContentValues;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.SharedPreferences;
|
||||
import android.database.Cursor;
|
||||
import android.media.AudioManager;
|
||||
import android.media.RingtoneManager;
|
||||
import android.net.wifi.WifiManager;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.os.Looper;
|
||||
import android.os.Parcelable;
|
||||
import android.view.ContextMenu;
|
||||
@@ -205,6 +211,35 @@ public class ListActivity extends Activity implements OnItemClickListener, OnCli
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Called when the database is first created.
|
||||
* Here we want to populate the populate the default ringr
|
||||
*/
|
||||
@Override
|
||||
public void onDatabaseCreate() {
|
||||
final AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
|
||||
final WifiManager wifi= (WifiManager) getSystemService(WIFI_SERVICE);
|
||||
final BluetoothAdapter bt= BluetoothAdapter.getDefaultAdapter();
|
||||
final ContentValues ringer = new ContentValues();
|
||||
final ContentValues info = new ContentValues();
|
||||
ringer.put(RingerDatabase.KEY_RINGER_NAME, getString(R.string.default_ringer));
|
||||
info.put(RingerDatabase.KEY_ALARM_VOLUME, am.getStreamVolume(AudioManager.STREAM_ALARM));
|
||||
info.put(RingerDatabase.KEY_MUSIC_VOLUME, am.getStreamVolume(AudioManager.STREAM_MUSIC));
|
||||
info.put(RingerDatabase.KEY_NOTIFICATION_RINGTONE_URI, RingtoneManager.getActualDefaultRingtoneUri(this, RingtoneManager.TYPE_NOTIFICATION).toString());
|
||||
info.put(RingerDatabase.KEY_NOTIFICATION_RINGTONE_VOLUME, am.getStreamVolume(AudioManager.STREAM_NOTIFICATION));
|
||||
info.put(RingerDatabase.KEY_RINGTONE_URI, RingtoneManager.getActualDefaultRingtoneUri(this, RingtoneManager.TYPE_RINGTONE).toString());
|
||||
info.put(RingerDatabase.KEY_RINGTONE_VOLUME, am.getStreamVolume(AudioManager.STREAM_RING));
|
||||
info.put(RingerDatabase.KEY_BT, bt.isEnabled());
|
||||
info.put(RingerDatabase.KEY_WIFI, wifi.isWifiEnabled());
|
||||
|
||||
|
||||
new Handler().post(new Runnable(){
|
||||
public void run(){
|
||||
mDb.updateRinger(1, ringer, info);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Called when a database is being upgraded
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user