标签: android-4.0-ice-cream-sandwich

ICS模拟器无法加载

我正在尝试使用ICS(Android 4.0)操作系统运行Android模拟器,但在快速四核机器上等待15分钟之后,它仍然没有做任何事情.我知道它正在模仿arm cpu,因此速度很慢 - 但这还没有从加载屏幕上消失!有没有人设法让它运行?有小费吗?

android android-emulator android-4.0-ice-cream-sandwich

2
推荐指数
1
解决办法
3778
查看次数

Android 4.0:从Activity而不是View设置SYSTEM_UI_FLAG_LOW_PROFILE&SYSTEM_UI_FLAG_HIDE_NAVIGATION

我正在玩控制ICS中的UI导航按钮.

抑制Nav按钮的当前机制是使用SYSTEM_UI_FLAG_HIDE_NAVIGATION或SYSTEM_UI_FLAG_LOW_PROFILE标志从View调用setSystemUiVisibility.这似乎是设置这些标志的一个奇怪的地方,因为大多数其他相关设置(例如隐藏状态栏)已通过窗口LayoutParams属性完成.

我的问题是,如果你们中的任何人都有一个想法,可以从一个活动环境中找到一个好方法.目前,我的应用程序旨在从基本活动类开始,该类包含我在整个应用程序中需要的任何功能.然后从该基类派生特定活动.我希望能够从该基本Activity设置UI导航标志,所以我不必在我的源代码中的多个位置执行它...但我的基本Activity不包含任何View对象.

作为次要陈述,我真正希望能够做的是完全删除NAV按钮(例如使用SYSTEM_UI_FLAG_HIDE_NAVIGATION),而不是让他们回到用户输入(让我的应用程序完全控制UI).我知道这不是市场上任何应用程序都能做到的......但我没有开发出可以通过市场获得的东西.我目前的计划涉及一个自定义构建的操作系统,这将允许我完成这一点,但如果有一些方法在此期间消除这些软按钮将是很好的.

谢谢!

android uinavigationbar android-4.0-ice-cream-sandwich

2
推荐指数
1
解决办法
9421
查看次数

Android 4.x Webview Hash标签

所以我在Android应用程序中嵌入了一个HTML jQuery元素,因为Android 4.xi上的一些奇怪的原因总是找不到页面.

这是一个非常简单的结构:

file.html#hash
Run Code Online (Sandbox Code Playgroud)

任何修复?

android webview android-4.0-ice-cream-sandwich

2
推荐指数
1
解决办法
654
查看次数

Android VideoView错误1,0

我有一个应用程序,主要目标是播放特定的视频文件.

它有时会正确播放视频.但有时候它给了我这个错误:

03-21 14:52:36.181: I/AwesomePlayer(119): 
setDataSource_l('/data/data/my.package.name/files/MyMovie.mp4')
03-21 14:52:36.196: W/VideoView(26612): Unable to open content: /data/data/my.package.name/files/MyMovie.mp4
03-21 14:52:36.196: W/VideoView(26612): java.lang.IllegalArgumentException: The surface has been released
03-21 14:52:36.196: W/VideoView(26612):     at android.media.MediaPlayer._setVideoSurface(Native Method)
03-21 14:52:36.196: W/VideoView(26612):     at android.media.MediaPlayer.setDisplay(MediaPlayer.java:633)
03-21 14:52:36.196: W/VideoView(26612):     at android.widget.VideoView.openVideo(VideoView.java:222)
03-21 14:52:36.196: W/VideoView(26612):     at android.widget.VideoView.access$2000(VideoView.java:49)
03-21 14:52:36.196: W/VideoView(26612):     at android.widget.VideoView$6.surfaceCreated(VideoView.java:465)
03-21 14:52:36.196: W/VideoView(26612):     at android.view.SurfaceView.updateWindow(SurfaceView.java:533)
03-21 14:52:36.196: W/VideoView(26612):     at android.view.SurfaceView.access$000(SurfaceView.java:81)
03-21 14:52:36.196: W/VideoView(26612):     at android.view.SurfaceView$3.onPreDraw(SurfaceView.java:169)
03-21 14:52:36.196: W/VideoView(26612):     at android.view.ViewTreeObserver.dispatchOnPreDraw(ViewTreeObserver.java:590)
03-21 14:52:36.196: W/VideoView(26612):     at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1617)
03-21 14:52:36.196: W/VideoView(26612):     at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2442)
03-21 …
Run Code Online (Sandbox Code Playgroud)

video android media-player android-4.0-ice-cream-sandwich android-videoview

2
推荐指数
2
解决办法
1万
查看次数

通过3G的Android ICS连接获​​得403响应,但通过Wifi确定

我在Android ICS上遇到一个奇怪的问题,我有以下代码来建立连接以读取xml文件:

// previous code......

URL url = new URL("https://urltomyxmlfile.com/xmlfile");
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
XMLReader xr = sp.getXMLReader();
XML_handler myXML_handler = new XML_handler();
xr.setContentHandler(myXML_handler);

HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setConnectTimeout(5000);
connection.setReadTimeout(25000);
connection.setDoInput(true);
connection.connect();
InputStream input = connection.getInputStream();
xr.parse(new InputSource(input));

//more code....
Run Code Online (Sandbox Code Playgroud)

此代码适用于所有Android版本的WiFi和3G,但在Android ICS只适用于wifi,在3G连接上我得到403响应.

我无法弄清楚这个问题的根源,我没有正确配置连接?Android ICS有任何新的限制吗?https的问题?

额外信息:此代码未在UI线程中运行

谢谢你的帮助!

新增额外信息:我发现只有三星Galaxy SII用户遇到此问题.

android wifi 3g http-status-code-403 android-4.0-ice-cream-sandwich

2
推荐指数
1
解决办法
1046
查看次数

对于 Android > 4.0 Webkit,禁用焦点文本输入的矩形(橙色边框)

我正在构建一个具有很酷的搜索输入的网络应用程序。然而,当我单击输入开始输入时,输入框会以蓝色边框突出显示,这很好,而且看起来不错,但除此之外,文本输入上方还会出现一个带有橙色边框的白色矩形,看起来非常糟糕。

我已经尝试了几种解决方案,但没有一个有效。(CSS 样式解决方案将 alpha 更改为 0 等。)[但是如果你能让它们在 android 4.0 和/或更高版本上工作,那么也许我做错了,我会再试一次]

其他人说这些解决方案不适用于较新的 Android 操作系统,这也是我的经验。我个人运行的是Android 4.0.4。

--- 问题的复制 ---

我的 Android 应用程序和本机 Android 浏览器...

在此输入图像描述

适用于 Android 的 Chrome 浏览器...[ 工作正常!]

在此输入图像描述

既然它可以在 Chrome 中运行,那么它一定是可以修复的。我原以为 Chrome 是开源的,所以我试图找到他们的源代码,这样我就有可能找到解决方案。Android Chrome 的源代码不可用,因此它不是开源的。

android webkit google-chrome webview android-4.0-ice-cream-sandwich

2
推荐指数
2
解决办法
1万
查看次数

Tablerow高度没变?

例如,我以编程方式创建了4个表格,我希望每个表格高度为屏幕的1/4大小.每个桌子高度是屏幕尺寸的一半.我尝试了不同的方法,但是桌子高度并没有改变.我管理更改tablerow宽度,但高度没有.这是我的代码:

@SuppressLint("NewApi")
public class GameActivity extends Activity {

    private Context context;

    public void drawTable(){
        int i;
        TableLayout table = new TableLayout(context);

        table.setLayoutParams(new TableLayout.LayoutParams(TableLayout.LayoutParams.MATCH_PARENT, TableLayout.LayoutParams.MATCH_PARENT));
        //table.setStretchAllColumns(true);
        //table.setShrinkAllColumns(true);
        //table.setWeightSum(1.0F);
        TableRow[] rows = new TableRow[5];
        for(i = 0; i < 4; ++i){
            rows[i] = new TableRow(context);
            rows[i].setBackgroundResource(R.drawable.images214);
            rows[i].setWeightSum((float)1.0);
            rows[i].setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, 10));
            //rows[i].setScaleY(0.25F);
            table.addView(rows[i]);
        }

        LinearLayout l = (LinearLayout) findViewById(R.id.linear);
        l.addView(table);
    }
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_game);

        context = this;
//        TableLayout table = new TableLayout(this);
//        TableRow row1 = new …
Run Code Online (Sandbox Code Playgroud)

android tablerow layoutparams android-4.0-ice-cream-sandwich android-tablelayout

2
推荐指数
1
解决办法
6138
查看次数

在将事件添加到Android日历之前检查事件是否存在

我的应用程序中有一个事件列表.侧面的按钮允许用户将事件日期和时间添加到他/她的日历中.我使用日历意图将用户重定向到相应日期和时间的android日历.现在用户将事件添加到他的日历后,我想禁用"添加事件"按钮,该按钮对应于他/她已经添加的事件(因此用户避免再次添加相同的事件).我怎样才能做到这一点?我已经完成了针对Android 4.0的新日历API,但我无法实现我想要的.

基本上我想要的是避免在用户日历中对同一事件重复输入.

任何帮助,将不胜感激.

events android calendar querying android-4.0-ice-cream-sandwich

2
推荐指数
1
解决办法
5703
查看次数

琐碎的Haxe(HaxePunk)游戏在HTC Desire(Icecream Sandwich)上跑得太慢

我已经制作了一个简单的3帧动画角色走到了使用Haxe + Haxepunk点击屏幕的地方......好吧,我从在线教程中复制/粘贴代码只是为了测试Haxe.

这在flash,iOS模拟器和三星Galaxy 3上运行得很好......但是我的HTC希望它以低于每秒1帧的速度运行.虽然我知道渴望不是春鸡,但这是一个巨大的性能差距,比我在任何应用程序上看到的更多:Galaxy vs. Desire ......

这是一个Haxe问题还是我做错了什么(错误的NDK,错误的编译标志,操作系统太旧等)?

android haxe android-4.0-ice-cream-sandwich haxepunk

2
推荐指数
1
解决办法
1052
查看次数

Android屏幕外视图仅绘制背景,没有其他内容

我正在尝试完全在屏幕外创建和渲染视图。首先,我尝试过(来自http://arpitonline.com/2012/07/17/capturing-bitmaps-of-views-in-android/):

Bitmap result = Bitmap.createBitmap(1080, 1080, Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(result);
view.layout(0, 0, 1080, 1080);
view.draw(c);
return result;
Run Code Online (Sandbox Code Playgroud)

它仅呈现我视图的背景色。大小和背景颜色正确,但是内容完全空白。然后我偶然发现了这一点:

view.layout(0, 0, 1080, 1080);
view.invalidate();
view.setDrawingCacheEnabled(true);
view.buildDrawingCache();
Bitmap bmp = view.getDrawingCache();
Bitmap result = bmp.copy(Bitmap.Config.ARGB_8888, false);
view.destroyDrawingCache();
return result;
Run Code Online (Sandbox Code Playgroud)

但同样,它会产生相同的结果:正确的大小和背景颜色以及空白内容。我的视图中有很多视图,我在它们上设置了许多属性,没有空指针等,所有设置都正确。但是他们只是没有被吸引。为什么会这样?

更新:正如psking建议的那样,我已将绘图逻辑移至,View#post但它仍然相同(尽管触发完成需要花费更长的时间,这可能是视图实际执行某项操作的线索)。尝试了两种方法:

(完成是我需要位图的函数)

final Bitmap result = Bitmap.createBitmap(1080, 1080, Bitmap.Config.ARGB_8888);
final Canvas c = new Canvas(result);
view.layout(0, 0, 1080, 1080);
view.post(new Runnable() {
    @Override
    public void run() {
        view.draw(c);
        completion.call(result);
    }
});
Run Code Online (Sandbox Code Playgroud)

view.layout(0, 0, 1080, …
Run Code Online (Sandbox Code Playgroud)

android view off-screen android-view android-4.0-ice-cream-sandwich

2
推荐指数
1
解决办法
1392
查看次数