Android MIUI小米录音机源码_Android录音源代码
2015-06-08 12:50:42  By: shinyuu

众所周知、小米一向以UI精美著称、经典的小米录音机也不例外、录音的时候磁带的转动效果、停止录音的时候的倒带效果都是相当精致、录音完成后文件存储在内存卡的sound_recorder文件夹、所以硬性的要求存在内存卡才可以使用、项目的代码不多、注释合理、可以借鉴一下小米的编程语法与格式标准、看上代码风格还是非常好的

android录音机源码


核心代码onCreate

@Override
public void onCreate(Bundle icycle) {
	super.onCreate(icycle);
	initInternalState(getIntent());
	setContentView(R.layout.main);

	mRecorder = new Recorder(this);
	mRecorder.setOnStateChangedListener(this);
	mReceiver = new RecorderReceiver();
	mRemainingTimeCalculator = new RemainingTimeCalculator();
	mSavedRecord = new HashSet<string>();

	initResourceRefs();

	setResult(RESULT_CANCELED);
	registerExternalStorageListener();
	if (icycle != null) {
		Bundle recorderState = icycle.getBundle(RECORDER_STATE_KEY);
		if (recorderState != null) {
			mRecorder.restoreState(recorderState);
			mSampleInterrupted = recorderState
				.getBoolean(SAMPLE_INTERRUPTED_KEY, false);
			mMaxFileSize = recorderState.getLong(MAX_FILE_SIZE_KEY, -1);
		}
	}

	setVolumeControlStream(AudioManager.STREAM_MUSIC);

	if (mShowFinishButton) {
		// reset state if it is a recording request
		mRecorder.reset();
		resetFileNameEditText();
	}
}


核心代码initInternalState

private void initInternalState(Intent i) {
	mRequestedType = AUDIO_ANY;
	mShowFinishButton = false;
	if (i != null) {
		String s = i.getType();
		if (AUDIO_AMR.equals(s) 
			|| AUDIO_3GPP.equals(s) 
			|| AUDIO_ANY.equals(s)
			|| ANY_ANY.equals(s)) {
			mRequestedType = s;
			mShowFinishButton = true;
		} else if (s != null) {
			// we only support amr and 3gpp formats right now
			setResult(RESULT_CANCELED);
			finish();
			return;
		}

		final String EXTRA_MAX_BYTES = android.provider
					.MediaStore.Audio.Media.EXTRA_MAX_BYTES;
		mMaxFileSize = i.getLongExtra(EXTRA_MAX_BYTES, -1);
	}

	if (AUDIO_ANY.equals(mRequestedType)) {
		mRequestedType = SoundRecorderPreferenceActivity
			.getRecordType(this);
	} else if (ANY_ANY.equals(mRequestedType)) {
		mRequestedType = AUDIO_3GPP;
	}
}


更多源代码、请下载导入Eclipse里面查看

源代码下载链接: http://dwtedx.com/download.html?bdkey=s/1dDwDv3N 密码: h4bi

若资源对你有帮助、浏览后有很大收获、不妨小额打赏我一下、你的鼓励是维持我不断写博客最大动力

想获取DD博客最新代码、你可以扫描下方的二维码、关注DD博客微信公众号(ddblogs)

或者你也可以关注我的新浪微博、了解DD博客的最新动态:DD博客官方微博(dwtedx的微博)

如对资源有任何疑问或觉得仍然有很大的改善空间、可以对该博文进行评论、希望不吝赐教

为保证及时回复、可以使用博客留言板给我留言: DD博客留言板(dwtedx的留言板)

感谢你的访问、祝你生活愉快、工作顺心、欢迎常来逛逛


快速评论


技术评论

  • 该技术还没有评论、赶快抢沙发吧...
DD记账
top
+