Articles of android

Android上的MP3解码

我们正在实施用于播放互联网audio的Android手机程序。 这里大概是我们做的事情: 下载一个自定义encryption格式。 解密以获取常规MP3数据块。 将MP3数据解码为内存缓冲区中的原始PCM数据。 将原始PCM数据传输到AudioTrack 目前我们的目标设备是Droid和Nexus One。 在Nexus One上一切正常,但Droid上的MP3解码太慢了。 如果我们把Droid加载,audio播放开始跳过。 我们不允许将MP3数据解码到SD卡,但我知道这不是我们的问题。 我们没有写自己的MP3解码器,而是使用了MPADEC( http://sourceforge.net/projects/mpadec/ )。 它是免费的,很容易与我们的程序整合。 我们用NDK编译它。 经过各种分析工具的详尽分析后,我们确信这是一个落后的解码器。 以下是我们正在考虑的选项: find我们可以用Android NDK编译的另一个MP3解码器。 这MP3解码器将不得不优化运行ARM移动设备或可能使用整数math或其他优化,以提高性能。 由于内置的​​Android MediaPlayer服务将采用URL,所以我们可以在我们的程序中实现一个小型的HTTP服务器,并通过解密后的MP3来为MediaPlayer服务。 这样我们就可以利用内置的MP3解码器。 通过NDK访问内置的MP3解码器。 我不知道这是否可能。 有没有人有什么build议,我们可以做什么来加快我们的MP3解码? – Rob Sz

没有GUI的Android活动

我创build了一个只能从链接启动的活动(使用意图filter)。我不希望这个活动有一个GUI – 我只是希望它启动一个服务,并在栏中发出通知。 我试图把意图filter的链接在我的服务,但这是行不通的。 有没有更好的事情做到这一点,将回答意向filter – 或者我可以让我的活动没有一个GUI? 对不起,如果我混乱,艾萨克

Android字符按字符显示文字animation

任何人都知道执行一个animation的有效方法,那就是按字符显示一个文本,如: Ť 钍 氏 这个 这个我 这是 … 等等。 谢谢!

如何点击Espresso中的RecyclerView内的项目

我有一个RecyclerView(R.id.recyclerView),每行有一个图像(R.id.row_image)和一个TextView。 我想点击第一行的图片。 我试图使用onData(..),但它似乎并没有工作。

当工程构build失败时,Android Studio挂起/冻结

自今天晚上以来,我遇到了一个非常有线的问题。 如果我的Android项目有任何错误,并且构build失败,那么我的Android工作室会被冻结/卡住。 我不能做任何事情,但杀死Android的工作室应用程序。 即使我下次打开同一个项目,Gradle也会尝试再次build立并冻结。 [请查看附件截图] 唯一的解决scheme,我可以find的是….我必须find究竟是什么原因导致“构build失败”,我将不得不解决使用其他编辑器的问题,然后我的Android工作室将开始工作。 事情直到今天晚上还没有任何问题。 并突然崩溃。 任何其他人有相同的问题? -n

在“adb reverse”上获取“error:closed”两次

我试图通过ADB反转端口,但它只是返回错误的隐秘error: closed 。 正常的转发工作。 会话片段: $ adb forward tcp:59778 tcp:59778 $ adb forward –list 015d2109ce0c1a0f tcp:59778 tcp:59778 $ adb forward –remove-all $ adb forward –list $ adb reverse –list error: closed error: closed $ adb reverse tcp:59778 tcp:59778 error: closed error: closed 我通过USB连接到Boot Camp上Windows 7 Pro x64的无根Nexus 7 2012 Android 4.4.4。

Android:ScrollView不能用键盘滚动

我有一个布局,其中一个是EditText。 布局很容易适合在一个页面上,但是,当软键盘不在时,布局不滚动。 这是我的布局的一个概述: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/background" > <ScrollView android:id="@+id/ScrollView1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentTop="true" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" > <CheckBox/> <TextView/> <LinearLayout> <EditText> <requestFocus /> </EditText> </LinearLayout> <TextView/> <LinearLayout> <Spinner/> </LinearLayout> </LinearLayout> </ScrollView> <Button android:layout_alignParentBottom="true" /> </RelativeLayout> 在我的清单中,我已经宣布了这个属性: android:windowSoftInputMode="adjustResize|stateHidden" 有谁知道为什么它不工作,以及如何确保它的工作? 提前致谢!

android.widget.ProgressBar.onRestoreInstanceState中的Uexplainable ClassCastException

我已经在app store中find了一段时间,但是偶尔会根据开发者控制台中的崩溃报告崩溃: java.lang.ClassCastException in android.widget.ProgressBar.onRestoreInstanceState中的java.lang.ClassCastException in android.widget.ProgressBar.onRestoreInstanceState带有堆栈跟踪: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.company.myapp/com.mycompany.myapp.activity.MyActivity}: java.lang.ClassCastException: android.view.AbsSavedState$1 cannot be cast to android.widget.ProgressBar$SavedState at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1996) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2023) at android.app.ActivityThread.access$600(ActivityThread.java:127) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1174) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4503) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:809) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:576) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.ClassCastException: android.view.AbsSavedState$1 cannot be cast to android.widget.ProgressBar$SavedState […]

PercentRelativeLayout,如何以编程方式设置高度

我正在使用Android百分比支持包中的PercentRelativeLayout。 这是我的布局。 <android.support.percent.PercentRelativeLayout android:id="@+id/view_parent" app:layout_heightPercent="68%" android:visibility="invisible" android:layout_width="match_parent" android:background="@color/mountain_meadow" android:layout_alignParentTop="true" android:layout_height="wrap_content"> <View android:id="@+id/view_child" android:layout_width="match_parent" app:layout_heightPercent="30%" android:layout_alignParentBottom="true" /> </android.support.percent.PercentRelativeLayout> 我想以编程方式更改view_child的高度。 我如何使用PercentRelativeLayout.LayoutParams或其他方式来做到这一点。

COLLATE LOCALIZED ASC代表什么?

private Cursor getContacts() { // Run query Uri uri = ContactsContract.Contacts.CONTENT_URI; String[] projection = new String[] { ContactsContract.Contacts._ID, ContactsContract.Contacts.DISPLAY_NAME }; String selection = ContactsContract.Contacts.IN_VISIBLE_GROUP + " = '" + (mShowInvisible ? "0" : "1") + "'"; String[] selectionArgs = null; String sortOrder = ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC"; return managedQuery(uri, projection, selection, selectionArgs, sortOrder); […]