我正在寻找一种方法来获得Android中任何给定视频的分辨率.它不必与Android中支持的其他格式一起使用,但如果确实如此,它会很棒.如果您不确定Android中支持的格式,请参阅此页面:
http://developer.android.com/guide/appendix/media-formats.html
我认为使用MediaPlayer该类可以做我想做的事情,但这看起来非常愚蠢和低效.而且,我想要一种相对较快的方式.
我的目标是Android 3.0+,如果这有任何区别的话.Honeycomb还支持.mkv文件,虽然直到Android 4.0才正式支持.
video android android-3.0-honeycomb android-4.0-ice-cream-sandwich
Android 4.0(ICS)有很多新的UI指南,非常棒.问题是,未来,我不确定如何为Android 4.0构建应用程序,并确保该应用程序在运行Android 2.2和2.3的设备上看起来相同/相似.
有Android兼容性库和向后兼容的Action Bar,但我一直在寻找一种更具体的解决方案,用于将ICS后应用程序移植到ICS之前的手机上.
我是在正确的轨道上吗?有人有什么想法?
android android-ui android-layout android-4.0-ice-cream-sandwich
我最近在我的应用程序中添加了Fragments.对于新的应用程序,我需要在显示我的片段时立即收到通知.所以我可以在我的片段再次显示后立即进行一些计算.
My Fragment与TabIndicator一起使用,它只有一个FragmentClass使用了几次.
这是正常的标准覆盖类:
@Override
public void onHiddenChanged(boolean hidden) {
super.onHiddenChanged(hidden);
}
Run Code Online (Sandbox Code Playgroud) 背景:
我通过我的应用程序获取cookie并通过向http发出请求在内部使用它们.用户可以在任何给定时间切换到webview,在这种情况下,我将cookie同步/注入到webView.
使用CookieSyncManager将Cookie同步到webview的代码:
CookieSyncManager.createInstance(a);
CookieManager cm = CookieManager.getInstance();
cm.setCookie(domain, cookieName + "=" + cookieValue);
CookieSyncManager.getInstance().sync();
Run Code Online (Sandbox Code Playgroud)
这适用于除 API 15+(Android 4.0,Ice Cream Sandwich)之外的所有 API级别.该CookieManager API不会被弃用.
是什么导致了这个问题,有没有解决方法?
cookies android android-webview android-4.0-ice-cream-sandwich
我有一个Android ICS Launcher 4.0.x的奇怪案例.
前提:
具有root权限的ICS设备
下载Android ICS Launcher 4.0.3/4源代码(修改并运行)
程序:
进入市场(Play商店),下载"Go Task Manager"
在Launcher上打开Widgets选项卡,找到"Mem Optimize",拖到主屏幕(工作区)
下载并安装"Fruit Ninja"
在主屏幕上的"Mem Optimize"小部件旁边创建"Fruit Ninja"快捷方式.
执行"Fruit Ninja"并将手机放在LANDSCAPE中(手持它在这个位置,不要更改)
在"水果忍者"的菜单屏幕上,切片"退出",选择"是"
现在回到Launcher主屏幕,点击"Mem Optimize"小部件
目前的结果:
期望:
我的尝试(修改Launcher ICS源代码):
添加到"Manifest.xml":android:screenOrientation="portrait"=>仍然无法解决问题.
处理配置更改,android:configChanges="orientation|screenSize"=>仍然无法解决问题.
使用:setRequestedScreenOrientation(PORTRAIT)=>仍然无法解决问题.
我试过在Android 2.x上工作过的; 然而,从4.0.3+开始,它不能按预期工作.有没有人对此有任何想法?
在Ice Cream Sandwich中,当有一个包含EditText的Activity时,即使用户离开Activity,EditText也会保留Activity的Context.为了证明这一点,我创建了TestLeakActivity,它分配了一个大字节数组.由于Activity的Context不会被垃圾收集,因此字节数组会在堆上累积,最终导致OutOfMemoryError.您可以使用DDMS堆工具观察堆增长,并且可以通过查看Eclipse MAT中的HPROF文件来跟踪对EditText类的未完成引用.要创建内存泄漏,请进入LaunchActivity,然后继续启动并退出TestLeakActivity.
LaunchActivity.java
package com.example.testleakproject;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TextView;
public class LaunchActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Button button = new Button(this);
button.setText("Start TestLeakActivity");
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(LaunchActivity.this, TestLeakActivity.class);
startActivity(intent);
}
});
ViewGroup container = ((ViewGroup) findViewById(android.R.id.content));
container.addView(button);
}
}
TestLeakActivity.java
package com.example.testleakproject; import android.app.Activity; import android.os.Bundle; import android.view.ViewGroup; import android.widget.EditText; …
可能是我,但是当我根据android页面上给出的公式计算最小app小部件大小时,我得不到正确的小部件宽度; 公式如下:
width(n)=(70 xn) - 30
当我想要一个5x1小部件时,正确的宽度将是(5*70) - 30 = 320dp.然而,当在motorola Xoom上测试它时,它解析为4x1小部件.我已经测试了不同的值,400dp对于带有Honeycomb的motorola xoom上的5x1似乎很好,但后来我在常规Galaxy Tab上用Gingerbread测试它然后它解析为6x1(就像人们期望的那样).
这里有两个问题;
android android-3.0-honeycomb android-2.3-gingerbread android-4.0-ice-cream-sandwich android-appwidget
我在Twitter应用程序中使用OAUTH,它将您发送到应用程序中的Twitter页面,然后您将登录并重定向回处理令牌的应用程序.这在android 2.0.x和3.0.x中完美适用,但在4.0中,当我尝试重定向回我的应用程序时,我得到"网页不可用".任何人都可以告诉我为什么这是?? 我的清单文件中有以下内容:
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="myapp" android:host="myactivity"/>
</intent-filter>
Run Code Online (Sandbox Code Playgroud)
twitter页面给出了一直在工作但现在不在android 4.0 ICS中的回调URL,有人可以帮忙吗?谢谢.
我想在android ics(4.0.3)中记录所有toast事件,但我无法记录任何系统事件.服务还没开始!
根据这个问题: onAccessibilityEvent(AccessibilityEvent事件)没有拦截通知
MyAccessibilityService.java
package com.test.toasts2;
import android.accessibilityservice.AccessibilityService;
import android.accessibilityservice.AccessibilityServiceInfo;
import android.app.Notification;
import android.os.Parcelable;
import android.util.Log;
import android.view.accessibility.AccessibilityEvent;
import android.widget.Toast;
public class MyAccessibilityService extends AccessibilityService {
public static final String TAG = "volumeMaster";
@Override
public void onAccessibilityEvent(AccessibilityEvent event)
{
Log.v(TAG, "***** onAccessibilityEvent");
Toast.makeText(getApplicationContext(), "Got event from: " + event.getPackageName(), Toast.LENGTH_LONG).show();
}
@Override
public void onInterrupt()
{
Log.v(TAG, "***** onInterrupt");
}
@Override
public void onServiceConnected()
{
Log.v(TAG, "***** onServiceConnected");
AccessibilityServiceInfo info = new AccessibilityServiceInfo();
info.eventTypes = AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED;
info.notificationTimeout = 100; …Run Code Online (Sandbox Code Playgroud) android accessibility-api toast android-4.0-ice-cream-sandwich
我最近偶然发现了android 4.0.3的问题,我在应用程序启动后立即得到以下异常(在其他Android版本上它工作正常):
java.lang.NullPointerException
at android.view.GLES20RecordingCanvas.drawPatch(GLES20RecordingCanvas.java:97)
at android.graphics.NinePatch.draw(NinePatch.java:125)
at android.graphics.drawable.NinePatchDrawable.draw(NinePatchDrawable.java:189)
at android.widget.ImageView.onDraw(ImageView.java:892)
at android.view.View.draw(View.java:10978)
at android.view.ViewGroup.drawChild(ViewGroup.java:2887)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2489)
at android.view.ViewGroup.drawChild(ViewGroup.java:2885)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2489)
at android.view.View.getDisplayList(View.java:10415)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:2597)
at android.view.View.getDisplayList(View.java:10380)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:2597)
at android.view.View.getDisplayList(View.java:10380)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:2597)
at android.view.View.getDisplayList(View.java:10380)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:2597)
at android.view.View.getDisplayList(View.java:10380)
at android.view.HardwareRenderer$GlRenderer.draw(HardwareRenderer.java:842)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:1910)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1634)
at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2442)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4424)
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:784)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud)
这与启用硬件加速相关,只要我在清单上禁用它,应用程序就会开始正常工作.
通过搜索我在Romain Guy的一些对话中找到了一个日志(在doc中搜索"drawPatch"),在那里他讨论了一些可能导致这种情况的原因,虽然没有提出解决方法或修复,我想知道是否我应该只为这个版本的Android禁用硬件加速,或者是否有解决方法?
谢谢你的时间.
android ×10
android-4.0-ice-cream-sandwich ×10
android-ui ×1
callback ×1
cookies ×1
fragment ×1
hidden ×1
memory-leaks ×1
orientation ×1
toast ×1
url ×1
video ×1