小编Ric*_*ier的帖子

在HoneyComb或ICS(Samsung)设备上未收到Intent.ACTION_USER_PRESENT

我有一个BackgroundReceiver设置来接收android.intent.action.USER_PRESENT清单文件中的:

    <receiver android:name="com.demo.MyBroadcastReceiver">
        <intent-filter>
            <action android:name="android.intent.action.USER_PRESENT" />
        </intent-filter>
    </receiver>
Run Code Online (Sandbox Code Playgroud)

我的重写onReceive(Context, Intent)方法很简单:

@Override
public void onReceive(Context context, Intent intent)
{
    if (intent != null)
    {

        if (Intent.ACTION_USER_PRESENT.equals(intent.getAction())
        {
            // wrapper for Log.d(String, String)
            Dbug.log("MyBroadcastReceiver: [" + intent.getAction() + "]");

            // this calls a service
            serviceExample(context, intent);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

问题:

  1. 在Android 3.x和4.x上使用这些意图操作有一些技巧吗?
  2. 也许这是一个众所周知的三星问题?
  3. 或者也许我在这些设备上忽略了一些设备设置?

android android-intent android-3.0-honeycomb android-4.0-ice-cream-sandwich

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

BlackBerry:在Ant脚本中从JAR源文件创建COD

如何使用Ant(bb-ant-tools)将JAR文件编译为COD?即没有其他源文件


原因

最终,我需要一个在构建期间运行Jar Jar Links(jarjar)的脚本,以解决在多个应用程序中使用我们的sdk的命名空间问题.Jarjar将JAR文件作为输入,我假设它输出一个JAR文件.

因此,要在bb-ant-tools构建中运行jarjar,我需要知道如何将输出JAR编译成COD.

我只关注这部分问题,以尽量减少其他可能的错误来源.一旦我可以掌握将JAR构建到COD中,我将尝试jarjar步骤.

进展

1)我可以将我的项目构建到工作COD中,在设备上签名并运行.

2)要包含sdk代码,我目前将源文件夹添加到主项目构建中.(将来我想知道如何将库作为JAR包含在构建中 - BlackBerry-Ant脚本将JAR包含在没有外部依赖的项目中)

3)此步骤的输出包括通常的文件:

  • MyApp.cod(如果我签名,它在设备上运行完美)
  • MyApp.csl
  • MyApp.cso
  • MyApp.debug
  • MyApp.jad
  • MyApp.jar(我想在这上面运行jarjar)
  • MyApp.rapc

4)我尝试运行第二个构建,获取上面的JAR文件并将其用作rapc调用中唯一的源文件.我通过将src标记指向rapc仅包含我的JAR文件的文件夹来执行此操作.

在构建的最后部分,当rapc是adding文件时,我收到错误:

 java.util.zip.ZipException: duplicate entry: MyApp-1.cod
Run Code Online (Sandbox Code Playgroud)

(已编辑的构建输出中的错误的完整详细信息)

我可以看到这是rapc第二次尝试添加此文件.我不明白为什么,因为JAR中只有该文件的一个副本.


构建输出(编辑...etc以使其可读)

build:
    [mkdir] Skipping C:\development\ant\new_test\MyApp\build because it already exists.
     [copy] Copying 1 file to C:\development\ant\new_test\MyApp\build
     [copy] Copying C:\development\ant\new_test\MyApp\icon.png to C:\development\ant\new_test\MyApp\build\icon.png
     [rapc] Compiling 1 source files to MyApp.cod
     [rapc] Executing 'C:\Java\jdk1.6.0_24\jre\bin\java.exe' …
Run Code Online (Sandbox Code Playgroud)

ant blackberry

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

ANT"替换"任务不扩展"replacetoken"标记中的属性

构建之后,我需要修改一个HTML文件,指向客户端下载新应用程序.

我搜索一个令牌; 用链接和令牌替换它:

<replace file="index.html" >

    <!-- this searches for literal text ${MyTOKEN} -->
    <!-- does not "expand" ${MyTOKEN} before searching -->
    <replacetoken>${MyTOKEN}</replacetoken>

    <replacevalue>"some link" <br> ${MyTOKEN}</replacevalue>
</replace>
Run Code Online (Sandbox Code Playgroud)

此代码不能移动到模板构建脚本中,因为replacetokenreplacevalue标签将文本作为文字 - 它们不在expandproperties我的ANT版本中.

我想使用属性来定义"some link"MyTOKEN值.


使用属性的解决方法"some link"filterchain在替换后使用a 并复制文件:

<copy file="index.html" tofile="index2.html" >
    <filterchain>
        <!-- this converts the ${xxx} properties into their values -->
        <expandproperties />
    </filterchain>
</copy>
Run Code Online (Sandbox Code Playgroud)

但是这replace已经完成了 - 所以这意味着我仍然需要将MyTOKEN值直接硬编码到构建脚本中.

  • 我想在构建脚本之外定义我的令牌,并在构建脚本中引用它 …

ant replace

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

如何避免频繁的位置更新?

我是android的新手.我希望以3分钟的间隔获得GPS位置,但我每秒都会获得位置更新.

我怎么能避免这个?

请提出建议.我正在使用以下代码:

captureFrequencey=3*60*1000;    
LocationMngr.requestLocationUpdates(
    LocationManager.GPS_PROVIDER, captureFrequencey, 0, this);
Run Code Online (Sandbox Code Playgroud)

gps android

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

按钮上的Android显示数字键盘单击

在我的应用程序中,我试图在用户单击按钮时显示数字小键盘.

单击该按钮时,我使用requestFocus()将焦点移动到布局中的EditText,然后我需要显示数字小键盘,以便用户可以键入值.

值始终为数字,因此我只需要显示数字键盘.

我厌倦了在我的按钮的onClick()方法中使用它,但它不起作用.

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(editText, InputMethodManager.SHOW_IMPLICIT);
Run Code Online (Sandbox Code Playgroud)

请为我提供任何解决方案.

此外,我的应用程序是支持4.0.3的Android平板电脑.

android buttonclick numeric-keypad

4
推荐指数
2
解决办法
5656
查看次数

控制状态栏中的警报图标

这个问题与Android版本的Lollipop有关.对于Lollipop API,请检查相关问题:


我想知道如何在状态栏中打开/关闭系统警报图标,如下图所示:

Android系统警报图标

根据我对系统的理解,以及我过去阅读的内容,它由内置系统闹钟应用程序控制.第三方应用程序无法在无根设备上对其进行控制.没有理由我们应该能够控制它.

但是,Timely v1.2.7在我的无根Galaxy Nexus v4.2.1和Nexus 5 v4.4.2上控制了这个图标.所以有可能.

我想知道在无根设备上执行此操作的技术是什么.我怀疑是一个hack或无证代码,但仍然感兴趣,如果有人可以解决一些问题.

android alarm alarmmanager undocumented-behavior android-alarms

4
推荐指数
1
解决办法
8159
查看次数

Nulls可以传递给包裹吗?

是否可以在null分配Parcel对象时写入,并在null再次取消对象时再次返回?

我们假设我们有以下代码:

public class Test implements Parcelable {
    private String string = null;
    public Test(Parcel dest, int flags) {
        source.writeString(string);
    }
}
Run Code Online (Sandbox Code Playgroud)

使用NullPointerException时从包裹中读取此值是否会得到Parcel.readString()

或者我会得到一个null价值?

android parcel parcelable

4
推荐指数
1
解决办法
6190
查看次数

Android小部件最大允许大小

我们可以使用例如设置小部件的MINIMUM大小

android:minHeight="40dp"
android:minResizeHeight="40dp"
android:minResizeWidth="40dp"
android:minWidth="40dp"
Run Code Online (Sandbox Code Playgroud)

没有android:max___属性.

有没有办法限制可调整大小的小部件的MAXIMUM大小?

(也许是我没有看到的调整大小回调或类似的东西?)


注意到文档说调整大小的常见用例是列表或网格.这不需要设置最大尺寸.

我的用例只是" 客户端要求提供1x1或2x2的单个小部件 ".他会得到他想要的东西,还是我必须为他改变主意?

android android-widget

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

我可以确定属于哪个库类吗?

我有一个示例类LivePagedListProvider即是在android.arch.paging包中。

有没有什么直接的方法可以确定这个类属于 gradle 文件中的哪个库?

java android gradle android-studio

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

使用多个filter()查询时,Objectify不会返回数据,即使相应的属性设置为多索引也是如此

我有一个现有的数据存储实体,如下所示:

@Data
@Entity
public class Data
{
    @Id @Index long id;
    long subId;
    boolean expired;
    boolean claimed;
}
Run Code Online (Sandbox Code Playgroud)

我需要根据subId过滤数据,过期声明的字段,所以我使用datastore-indexes.xml创建了一个多索引,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<datastore-indexes autoGenerate="true">
<datastore-index kind=“Data” ancestor="false">
    <property name=“subId” direction="asc" />
    <property name="expired" direction="asc" />
    <property name="claimed" direction="asc" />
</datastore-index>
</datastore-indexes>
Run Code Online (Sandbox Code Playgroud)

该实体完全是一个新实体,下面是添加到实体类中的两个新记录:

Column : Data

id : 1
subId : 1
expired : false
claimed : false

id : 2
subId : 1
expired : false
claimed : false
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试使用以下逻辑查询数据实体时,我确实得到空数据:

List<Data> data = ofy.load().type( Data.class )
    .filter( "subId = ", …
Run Code Online (Sandbox Code Playgroud)

objectify google-cloud-datastore

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