小编Wil*_*ard的帖子

@SuppressWarnings("unused") 发出警告:Android Studio 更新后的冗余抑制

我在一些当前未使用的低级类中有一个私有方法,但我不希望“方法 x 从未使用过”警告可能掩盖其他更重要的警告。我为该方法添加了标准警告抑制:

    @SuppressWarnings("unused")
Run Code Online (Sandbox Code Playgroud)

直到最近,它都运行良好,该方法没有警告。然而,在升级到 AS 4.1.1 后,这些已经开始收到“冗余抑制”警告。如果我取消抑制,原始未使用的警告就会回来。

我使用的是 Android Studio 4.1.1(11 月 4 日)

android static-analysis android-studio-4.1

11
推荐指数
1
解决办法
413
查看次数

在onScale事件之后触发了奇怪的onScroll事件

我有一个使用SimpleOnScaleGestureListener和SimpleOnGestureListener的应用程序.每当我进行捏缩放时,我得到了预期的onScale,但是当我抬起时,我看到一个奇怪的onScroll,它具有从捏拉变焦开始的起始位置和从捏拉变焦结束的结束位置.我的问题是,我可以防止假滚吗?

这是代码:

@Override
public boolean onTouchEvent(MotionEvent event) {

    // Log every event.
    Log.d(TAG, Here.at() + String.format("Event: %d, Time: %d X: %f, Y: %f", 
            event.getAction(), 
            event.getEventTime(),
            event.getX(),
            event.getY()
            ));

    boolean handled = mScaleDetector.onTouchEvent(event); // This appears to ALWAYS return true (online reference indicated that's what the Android code does).

    handled |= mDetector.onTouchEvent(event);

    handled |= super.onTouchEvent(event);

    return handled;
}

private class ScaleListener extends ScaleGestureDetector.SimpleOnScaleGestureListener {

    @Override
    public boolean onScaleBegin(ScaleGestureDetector detector) {
        // This is required.  If absent, the scale gesture never starts. …
Run Code Online (Sandbox Code Playgroud)

android gestures onscroll

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

应用未运行时的Google Awareness Api事件

我希望在Google Awareness API"fence"触发时启动BroadcastReceiver或IntentService(取决于我的最终处理需要多长时间).例如,也许我想知道在一天中激活一组信标栅栏的次数(假设我随身携带电话).我发现的所有示例都显示了在代码中注册广播接收器,但我的理解是我需要在清单中注册广播接收器,以便操作系统在我的应用程序未运行时向其发送广播.更重要的是,意图ID似乎是一个自定义ID,所以我猜我必须通过代码至少一次在OS上注册它?

我猜我将不得不创建一个或多个测试应用程序来通过反复试验来解决这个问题,但是肯定会感谢任何试过这个并希望分享你的结果的人的回复!

android broadcastreceiver google-awareness

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

实体框架 + Linq LEFT JOIN 使用 where 子句?

我在 Entity Framework 5 中使用 Linq 并使用查询语法(我认为,请更正我的术语)。我有一个参与者表,并希望将他们的学习 ID 号与记录的 SMS 消息相关联,其中消息中的“to”或“from”号与参与者的电话号码相匹配。此外,我希望从(或到)未知号码发送的消息也显示在列表中,在这种情况下,研究 ID 号将为空。

这是 LEFT JOIN 的工作原始查询(如果重要,请使用 MySQL 数据库):

SELECT
    messages._id, participants.study_id_number, messages.ts,
    messages.from_phone, messages.to_phone, messages.body
FROM messages LEFT JOIN
    participants ON (   (participants.phone_number = messages.to_phone)
                     || (participants.phone_number = messages.from_phone))
ORDER BY messages.ts DESC;
Run Code Online (Sandbox Code Playgroud)

这是我迄今为止在 Linq 中所做的工作,但它是一个内部连接:

var loggedMessages = from pp in theDb.participants
                     let phone = pp.phone_number
                     from mm in theDb.messages
                     let fromPhone = mm.from_phone
                     let toPhone = mm.to_phone
                     where ((phone == fromPhone) || (phone == toPhone))

                     orderby mm.ts …
Run Code Online (Sandbox Code Playgroud)

c# mysql linq entity-framework

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