Merge branch 'audiorecorder-3.2.15'

This commit is contained in:
Alexey Kuznetsov 2018-08-13 14:00:32 +03:00
commit fbb50f70e8
9 changed files with 102 additions and 17 deletions

View file

@ -10,8 +10,8 @@ android {
applicationId "com.github.axet.audiorecorder"
minSdkVersion 9
targetSdkVersion 23 // 24+ file:// unable to open
versionCode 272
versionName "3.2.14"
versionCode 273
versionName "3.2.15"
}
signingConfigs {
release {
@ -57,5 +57,5 @@ android {
dependencies {
testImplementation 'junit:junit:4.12'
implementation 'com.github.axet:android-audio-library:1.0.111' // implementation project(':android-audio-library')
implementation 'com.github.axet:android-audio-library:1.0.113' // implementation project(':android-audio-library')
}

View file

@ -130,9 +130,9 @@ public class MainActivity extends AppCompatThemeActivity {
getMenuInflater().inflate(R.menu.menu_main, menu);
MenuItem item = menu.findItem(R.id.action_show_folder);
Intent intent = StorageProvider.openFolderIntent(this, storage.getStoragePath());
Intent intent = StorageProvider.getProvider().openFolderIntent(this, storage.getStoragePath());
item.setIntent(intent);
if (!StorageProvider.isFolderCallable(this, intent, StorageProvider.getAuthority())) {
if (!StorageProvider.isFolderCallable(this, intent, StorageProvider.getProvider().getAuthority())) {
item.setVisible(false);
}

View file

@ -132,7 +132,6 @@ public class RecordingActivity extends AppCompatThemeActivity {
}
class RecordingReceiver extends BluetoothReceiver {
@Override
public void onConnected() {
if (thread == null) {
@ -210,8 +209,6 @@ public class RecordingActivity extends AppCompatThemeActivity {
setContentView(R.layout.activity_recording);
setupActionBar();
pitch = (PitchView) findViewById(R.id.recording_pitch);
time = (TextView) findViewById(R.id.recording_time);
state = (TextView) findViewById(R.id.recording_state);
@ -221,7 +218,7 @@ public class RecordingActivity extends AppCompatThemeActivity {
sound = new Sound(this);
sampleRate = Sound.getSampleRate(this);
samplesUpdate = (int) (pitch.getPitchTime() * sampleRate / 1000.0);
samplesUpdate = (int) (pitch.getPitchTime() * sampleRate / 1000f);
samplesUpdateStereo = samplesUpdate * Sound.getChannels(this);
screen = new ScreenReceiver();
@ -344,13 +341,6 @@ public class RecordingActivity extends AppCompatThemeActivity {
}
}
private void setupActionBar() {
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
// actionBar.setBackgroundDrawable(new ColorDrawable(MainApplication.getActionbarColor(this)));
}
}
void loadSamples() {
File f = storage.getTempRecording();
if (!f.exists()) {

View file

@ -67,6 +67,7 @@ public class SettingsActivity extends AppCompatSettingsThemeActivity implements
public static String[] PREMS = new String[]{Manifest.permission.READ_PHONE_STATE};
@SuppressWarnings("unchecked")
public static <T> T[] removeElement(Class<T> c, T[] aa, int i) {
List<T> ll = Arrays.asList(aa);
ll = new ArrayList<>(ll);

View file

@ -46,7 +46,7 @@ public class Storage extends com.github.axet.audiolibrary.app.Storage {
}
return Uri.fromFile(getNextFile(f, format, ext));
} else {
throw new RuntimeException("unknown uri");
throw new UnknownUri();
}
}

View file

@ -108,6 +108,7 @@ public class BluetoothReceiver extends BroadcastReceiver {
public void onStartBluetoothSco() {
}
@SuppressWarnings("deprecation")
public boolean startBluetooth() {
AudioManager am = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
if (am.isBluetoothScoAvailableOffCall()) {

View file

@ -21,6 +21,7 @@ import android.view.View;
import android.widget.RemoteViews;
import com.github.axet.androidlibrary.widgets.OptimizationPreferenceCompat;
import com.github.axet.androidlibrary.widgets.ProximityShader;
import com.github.axet.audiolibrary.app.Storage;
import com.github.axet.audiorecorder.R;
import com.github.axet.audiorecorder.activities.MainActivity;
@ -130,6 +131,7 @@ public class RecordingService extends Service {
} else if (a.equals(RECORD_BUTTON)) {
RecordingActivity.startActivity(this, false);
} else if (a.equals(SHOW_ACTIVITY)) {
ProximityShader.closeSystemDialogs(this);
if (intent.getStringExtra("targetFile") == null)
MainActivity.startActivity(this);
else

View file

@ -0,0 +1,24 @@
<html>
<head>
<meta name="viewport" content="width=device-width,initial-scale=1">
<link rel="source" href="https://en.wikipedia.org/wiki/Binaural_beats"/>
<style>
a { white-space: pre-wrap; word-wrap:break-word; }
</style>
</head>
<body>
<h3>O aplikacji</h3>
<p>
Przyjazny dla systemu Android!
</p>
<p>Audio Recorder with custom recording folder, nice recording volume indicator, recording notification, recording lock screen activity.</p>
<dl>
<dt><b>Licencja:</b></dt>
<dd>GPLv3</dd>
<dt><b>Kod Źródłowy:</b></dt>
<dd><a href="https://gitlab.com/axet/android-audio-recorder">https://gitlab.com/axet/android-audio-recorder</a></dd>
</dl>
</body>
</html>

View file

@ -0,0 +1,67 @@
<resources>
<string name="app_name">Audio Recorder</string>
<string-array name="sample_rate_text">
<item>48 kHz</item>
<item>44.1 kHz (CD)</item>
<item>32 kHz</item>
<item>22 kHz</item>
<item>16 kHz (domyślnie)</item>
<item>11 kHz</item>
<item>8 kHz (telefon)</item>
</string-array>
<string-array name="source_text">
<item>Mikrofon</item>
<item>Bluetooth</item>
</string-array>
<string-array name="themes_text">
<item>Motyw Jasny</item>
<item>Motyw Ciemny</item>
</string-array>
<string-array name="channels_text">
<item>Mono (domyślnie)</item>
<item>Stereo</item>
</string-array>
<string name="hold_by_call">pauza (wstrzymane przez połączenie)</string>
<string name="recording_status_recording">nagrywanie</string>
<string name="recording_status_encoding">enkodowanie</string>
<string name="recording_status_pause">pauza</string>
<string name="recording_status_edit">edytuj</string>
<string name="confirm_cancel">Potwierdź anulowanie</string>
<string name="encoding_title">Enkodowanie...</string>
<string name="pause_title">Pauza...</string>
<string name="recording_title">Nagrywanie</string>
<string name="open_recording_folder">Otwórz Folder Nagrywania</string>
<string name="recording_list_is_empty">Lista nagrań jest pusta\n\nKliknij Nagraj, aby rozpocząć nagrywanie</string>
<string name="record_button">Nagrywaj</string>
<string name="cut_button">Wytnij</string>
<string name="stop_button">Stop</string>
<string name="cancel_button">Anuluj</string>
<string name="pause_button">Pauza</string>
<string name="pref_storage_title">Ścieżka Przechowywania</string>
<string name="pref_rate_title">Tempo Próbkowania</string>
<string name="pref_encoding_title">Enkodowanie</string>
<string name="pref_encoding_summary">Wyjściowy format pliku (.wav, .m4a, ...)</string>
<string name="pref_mode_title">Tryb</string>
<string name="pref_nameformat_title">Format Nazwy</string>
<string name="pref_pausecalls_title">Wstrzymaj podczas połączeń</string>
<string name="pref_pausecalls_summary">Zatrzymaj nagrywanie po odebraniu i kontynuuj podcas rozłączania</string>
<string name="pref_silence_title">Tryb Wyciszenia</string>
<string name="pref_silence_summary">Przełącz telefon w \'tryb ciszy\' podczas nagrywania</string>
<string name="pref_lockscreen_title">Sterowanie z ekranu blokady</string>
<string name="pref_lockscreen_summary">Pokaż elementy sterujące, gdy telefon jest zablokowany</string>
<string name="pref_theme_title">Motyw Aplikacji</string>
<string name="pref_theme_summary">Ustaw motyw aplikacji (ciemny / jasny)</string>
<string name="pref_application">Aplikacja</string>
<string name="pref_recordings">Nagrania</string>
<string name="pref_fly_title">Enkodowanie w Locie</string>
<string name="pref_fly_summary">Włączając enkodowanie w locie, wyłącza edytowanie i odzyskiwanie po awarii</string>
<string name="hold_by_bluetooth">pauza (bluetooth rozłaczony)</string>
<string name="menu_search">Szukaj</string>
<string name="save_as_wav">Zapisz jako WAV</string>
</resources>