Articles of 编码

如何在Android设备上将WAV编码为mp3

我已经简化了我的问题,并提供了一个赏金:有什么select压缩原始PCMaudio数据到Android设备上的MP3。 我原来的post:我在我的Android手机上创build了一个合成器,我一直在生成PCM数据发送给扬声器。 现在我想知道如果我可以将这个PCM数据编码为一个MP3保存到SD卡。 MediaRecorder对象可以将来自麦克风的audio编码为各种格式,但不允许以编程方式生成的audio数据进行编码。 所以我的问题是,是否有一个标准的Android API编码audio? 如果不是,那么纯粹的基于Java或NDK的解决scheme在那里? 你能推荐他们吗? 没有这个我只需要将我生成的audio保存为一个WAV文件,我可以很容易地做到这一点。

在更新到Java 8之后,Android以错误的编码显示文本

我已经更新了我的项目到SDK版本24和Java 8,并遇到了一个奇怪的编码问题。 由于一些奇怪的原因,Android将我的硬编码的UTF-8string视为Windows-1251,因此文本出现乱码。 喜欢这个: 这是我改变了: compileSdkVersion 24 buildToolsVersion "24.0.2" compileOptions { encoding = 'utf-8' sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } 而我所尝试的: 在Android Studio设置中更改了编码 增加了compileOptions.encoding ='windows-1251'和compileOptions.encoding ='utf-8' 添加系统variablesJAVA_TOOL_OPTIONS:-Dfile.encoding = UTF8 如果我恢复到Java 7一切正常。 有任何想法吗?

如何将图像转换为base64string

我想将图像转换为64位编码为string。 从那发送到oma_status-icon xml格式的服务器。 但我得到不受支持的编码从服务器响应…. 有没有其他的方式来将图像转换为base64string? plz..help … 我的代码是: Bitmap bitmapOrg = BitmapFactory.decodeResource(getResources(), R.drawable.image); ByteArrayOutputStream bao = new ByteArrayOutputStream(); bitmapOrg.compress(Bitmap.CompressFormat.JPEG, 100, bao); byte [] ba = bao.toByteArray(); String ba1=Base64.encodeBytes(ba);

排在请求中的UTF-8编码

在我的Android应用程序中,我使用Volley JsonArrayRequest加载JSON数据。 数据是由我自己创build的,我用UTF-8编码将它们保存为Sublime。 当我得到Response并填写我的ListView ,文本显示不正确(元音变音)。 这是我的请求看起来像: JsonArrayRequest request = new JsonArrayRequest(targetUrl, new Response.Listener<JSONArray>() { @Override public void onResponse(final JSONArray response) { try { fillList(response); } catch (JSONException e) { e.printStackTrace(); } } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { } }); requestQueue.add(request); 当我用这种方法加载完全相同的数据时,所有的文本显示正确: final StringBuilder builder = new StringBuilder(); final HttpClient client […]

如何在Android上的HttpPost发送unicode字符

我试图让我的应用程序,这使得HTTP张贴上传新消息的多语言支持。 为了支持日语和其他非拉丁语言,我需要做些什么? 我的代码目前看起来像这样: //note the msg string is a JSON message by the time it gets here… private String doHttpPost(String url, String msg) throws Exception { HttpPost post = new HttpPost(url); StringEntity stringEntity = new StringEntity(msg); post.setEntity(stringEntity); return execute(post); }

有没有什么办法从签名的APK获取密钥哈希值?

有没有什么办法从签名的APK获取密钥哈希值? 我们有一个已签名的Android apk文件,我们想要找出这个APK的关键哈希,为Facebook SDK。 我们可以通过像jarsigner这样的东西来做到吗? 有什么build议么?

Android设置内容typesHttpPost

你怎么能改变Android的HttpPost的内容types? 对于一个请求,我需要设置内容types为application / x-www-form-urlencoded 所以我有这样的代码: httpclient=new DefaultHttpClient(); httppost= new HttpPost(url); StringEntity se = new StringEntity(""); se.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE, "application/x-www-form-urlencoded")); httppost.setEntity(se); 但是这并不能解决问题,我无法在任何地方find解决scheme。 干杯

StandardCharsets.UTF_8在低于19的低API

我正在使用这个代码来正确地将斯堪的纳维亚字符发布到php。 这里的问题是API 19之前不支持StandardCharsets.UTF_8 byte[] postData = urlParameters.getBytes(StandardCharsets.UTF_8); DataOutputStream wr = new DataOutputStream( con.getOutputStream()); wr.write( postData ); 字段要求API级别19(当前最小值为14):java.nio.charset.StandardCharsets#UTF_8 我应该怎么做低于19的API呢?

在APK中对AndroidManifest.xml进行编码/解码

我正在使用ApkTool来解码APK文件中的AndroidManifest.xml ,它完美的工作,但我怎么能再次编码它,应用一些变化之后,编码的方式相同? 例如(在我的情况下)更改应用程序标签。

如何使用Android MediaCodec生成AAC ADTS基本stream

我想要做的是:使用Android的MediaCodec将原始PCMaudio样本编码为原始AAC文件。 我遇到的问题是:当我使用FFMPEG将生成的原始AAC文件打包到M4A容器中时,FFMPEG抱怨文件中缺less编解码参数。 细节: 由于我找不到生成输出AAC文件的audio编码器的任何MediaCodec示例代码,我试图将video编码器修改为audio编码器。 原代码在这里: source_code 我configuration了这样的audio编码器: mEncoderFormat = MediaFormat.createAudioFormat("audio/mp4a-latm", (int)mAudioSampleRate, 2); // redundant? mEncoderFormat.setString(MediaFormat.KEY_MIME, "audio/mp4a-latm"); mEncoderFormat.setInteger(MediaFormat.KEY_AAC_PROFILE, MediaCodecInfo.CodecProfileLevel.AACObjectELD); mEncoderFormat.setInteger(MediaFormat.KEY_SAMPLE_RATE, kSampleRates); mEncoderFormat.setInteger(MediaFormat.KEY_BIT_RATE, kBitRates); mEncoderFormat.setInteger(MediaFormat.KEY_CHANNEL_COUNT, 2); testEncoderWithFormat("audio/mp4a-latm", mEncoderFormat); try { codec.configure( mEncoderFormat, null /* surface */, null /* crypto */, MediaCodec.CONFIGURE_FLAG_ENCODE); } catch (IllegalStateException e) { Log.e(TAG, "codec '" + componentName + "' failed configuration."); return; } […]