小编hun*_*dym的帖子

Android应用程序不会崩溃,但不会对未捕获的异常做出响应

我最近注意到,当未捕获的异常发生时,我的应用程序不会崩溃,但它没有响应.我使用谷歌分析来获得崩溃的洞察力,我怀疑这可能是问题的原因.

当我扔进NullPointerExceptiononCreate()(紧接着)后super.onCreate(),该应用程序显示一个白色的屏幕,但它不会崩溃.

Logcat说:

06-30 14:00:59.386  26259-26259/? I/GAv4? Google Analytics 7.5.71 is starting up. To enable debug logging on a device run:
    adb shell setprop log.tag.GAv4 DEBUG
    adb logcat -s GAv4
06-30 14:00:59.398  26259-26259/? W/GAv4? AnalyticsReceiver is not registered or is disabled. Register the receiver for reliable dispatching on non-Google Play devices. See http://goo.gl/8Rd3yj for instructions.
06-30 14:00:59.409  26259-26259/? W/GAv4? CampaignTrackingReceiver is not registered, not exported or is disabled. Installation campaign tracking is not possible. …
Run Code Online (Sandbox Code Playgroud)

java android google-analytics uncaughtexceptionhandler

10
推荐指数
1
解决办法
1220
查看次数

LayoutInflater有时(随机)膨胀错误的背景颜色

我使用LayoutInflater扩展视图.我的膨胀RelativeLayout的背景颜色在我的xml文件中设置.我在我的一个设备上遇到了一个奇怪的问题:有时(随机)背景颜色是我的colors.xml中的另一种(错误的)颜色.以前有人遇到过这个问题吗?

细节:

我有ListView一个CursorAdapter.我使用以下代码只使用一个静态项目(所以我认为这不是回收问题)来扩充列表项目:

@Override
public View newView(Context context, Cursor cursor, ViewGroup parent) {
    LayoutInflater vi = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE) ;
    View v = vi.inflate(R.layout.bookmark_item, null) ;
    //bindView(v, context, cursor) ;
    Log.wtf("newView", "View color: " + Integer.toString(((ColorDrawable) (((RelativeLayout)v.findViewById(R.id.bookmark_row)).getBackground())).getColor())) ;
    return v;
}
Run Code Online (Sandbox Code Playgroud)

我的layout/bookmark_item.xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" >

    <RelativeLayout
        android:id="@+id/bookmark_row"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/app_menu_item_background"
        tools:ignore="UselessParent" >

        <TextView 
            android:id="@+id/bookmark_item_title"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
        />
    </RelativeLayout>

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

内部RelativeLayout的背景颜色设置为@color/app_menu_item_background.这个颜色在我的R.java:

public static final int app_menu_item_background=0x7f0a0036; 
Run Code Online (Sandbox Code Playgroud)

我还有一个名为的颜色@color/app_menu_item_colored_background,我在代码中的其他地方使用的颜色,它与我的书签列表和适配器没有任何共同之处.它还具有不同的资源ID …

android colors android-listview layout-inflater

8
推荐指数
1
解决办法
1758
查看次数

Google Maps for Android v2 API密钥验证如何运作?

我想知道Google Maps Android v2 API密钥验证是如何工作的?(我知道如何请求密钥并在Android项目中使用它.)

我只关心它如何检查应用程序签名并使用它来验证服务器端的请求.

是否可以使用类似的方法来授权我的自定义API的用户,并确保没有其他人使用它,只能通过我签名的应用程序?

(这是一个类似的问题,但它与浏览器版本有关:谷歌地图如何保护他们的API密钥?如何制作类似的东西?,它与Android应用程序签名无关)

security android google-maps api-key google-maps-android-api-2

6
推荐指数
0
解决办法
565
查看次数

当地图区域自动移动时,Android地图v2变得质量低

我正在模拟在Android地图v2上预先录制的路径上行驶的汽车.当我用手放大路径时,效果很好,但是当我将摄像机移到路径上时mMap.animateCamera(),它不会加载可见的地图区域,我只会得到一个非常像素化的低质量地图.如果我触摸屏幕并移动地图或缩放一点,那么它会再次加载此部分.

我怎样才能实现,它总能清楚地加载可见部分?

编辑: 我添加了一个示例图像:这是我在不触摸地图时看到的内容.触摸后,它变得清晰(类似于左下角部分).

示例图片

编辑2: 我有一个想法,这是因为谷歌希望通过快速移动相机在一个区域上来防止地图被缓存.这可能是导致这个问题的原因吗?(地图显示匈牙利布达佩斯,你无法下载哪部分地图供离线使用......)但在这里我只想展示动画并放置标记,我只需要显示可见区域 - 是否有有什么方法可以解决这个问题?

EDIT3: 动画代码:

new Thread(new Runnable() {

    @Override
    public void run() {
        // ... Calculating and sending new location, in an infinite loop with sleeps for timing

        MainActivity.this.runOnUiThread(new Runnable() {

            @Override
            public void run() {
                mMap.animateCamera(CameraUpdateFactory.newLatLng(new LatLng(location.getLatitude(), location.getLongitude())));
            }
        });
    }
}).start();
Run Code Online (Sandbox Code Playgroud)

android caching android-maps-v2

6
推荐指数
1
解决办法
1110
查看次数

当发送包过于频繁时,Indy TCPServer 不会从 TCPClient 接收所有包

我的 Indy TCP 连接有问题。我使用带有 Indy 10 的 Turbo Delphi 2006。我想将多个 TCP 包从 idTCPClient 发送到 idTCPServer。

当我只想发送一个包时,它工作得很好,或者我在函数的两次调用之间插入了 sleep(100) 命令。但是如果我太频繁地调用这个函数,它就不会每次都调用服务器的 onExecute。

我的发送代码:

procedure SendData(var data: TIdBytes) ;
begin
  FormMain.IdTCPClient.Connect ;
  FormMain.IdTCPClient.Socket.Write(data);
  FormMain.IdTCPClient.Disconnect ;
end ;
Run Code Online (Sandbox Code Playgroud)

我多次调用此函数(每秒 5-10 次),并希望在我的服务器应用程序中处理所有这些包:

procedure TFormMain.IdTCPServerMainExecute(AContext: TIdContext);
var
  data: TIdBytes ;
begin
  AContext.Connection.IOHandler.ReadBytes(data, 4, false)
  // processing data
end
Run Code Online (Sandbox Code Playgroud)

提前感谢您的回答!

delphi indy tcpclient tcpserver indy10

5
推荐指数
1
解决办法
4371
查看次数

在PostgreSQL中有效合并最近日期的两个数据集

我尝试将两个具有不同时间分辨率的表合并到最近的日期。

表格如下:

表格1:

id    | date    | device  | value1
----------------------------------
1     | 10:22   | 13      | 0.53
2     | 10:24   | 13      | 0.67
3     | 10:25   | 14      | 0.83
4     | 10:25   | 13      | 0.32
Run Code Online (Sandbox Code Playgroud)

表2:

id    | date    | device  | value2
----------------------------------
22    | 10:18   | 13      | 0.77
23    | 10:21   | 14      | 0.53
24    | 10:23   | 13      | 0.67
25    | 10:28   | 14      | 0.83
26    | 10:31   | …
Run Code Online (Sandbox Code Playgroud)

sql algorithm postgresql merge greatest-n-per-group

3
推荐指数
2
解决办法
2156
查看次数