小编dan*_*max的帖子

是否可以将广播接收器定义为清单文件中的内部类?

我想在我的主要活动中创建一个广播接收器作为内部类.但我在清单xml文件中定义广播接收器时遇到问题,因为android无法找到它.

码:

public class MyActivity extends Activity{
    ...

    public class Receiver extends BroadcastReceiver{

        @Override
        public void onReceive(Context context, Intent intent) {
            ....
        }

    }

    ...
}
Run Code Online (Sandbox Code Playgroud)

表现:

<receiver android:name=".org.danizmax.myapp.MyActivity$Receiver" android:enabled="true">
            <intent-filter>
                <action android:name="org.danizmax.myapp.BROADCAST_INITIAL_DATA"></action>
            </intent-filter>
</receiver>
Run Code Online (Sandbox Code Playgroud)

我尝试过:

  • .org.danizmax.myapp.MyActivity $接收器
  • org.danizmax.myapp.MyActivity $接收器
  • .MyActivity $接收器
  • .接收机

我看到其他人也有类似的问题,但没有找到任何答案.

那有可能吗?如果没有,有什么更好的方式来使用广播接收器?

谢谢!

android broadcastreceiver android-manifest

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

使用JPA解析普通查询时出现语法错误

我使用netbeans向导创建了实体bean,并尝试从数据库中获取数据.无论我使用什么SQL查询,它都不起作用.我尝试使用由向导创建的命名查询:

@NamedQuery(name = "Usr.findAll", query = "SELECT u FROM Usr u")
Run Code Online (Sandbox Code Playgroud)

它返回:

Caused by: Exception [EclipseLink-8025] (Eclipse Persistence Services - 2.0.1.v20100213-r6600): org.eclipse.persistence.exceptions.JPQLException
Exception Description: Syntax error parsing the query [Usr.findAll], line 1, column 0: unexpected token [Usr].
Run Code Online (Sandbox Code Playgroud)

如果我试试;

SELECT uid FROM usr;
Run Code Online (Sandbox Code Playgroud)

我明白了:

Caused by: java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager: 
Exception Description: Syntax error parsing the query [SELECT uid FROM usr;], line 0, column -1: unexpected end of query.
Internal Exception: MismatchedTokenException(-1!=78)
Run Code Online (Sandbox Code Playgroud)

即使我尝试:

SELECT * …
Run Code Online (Sandbox Code Playgroud)

jpa eclipselink jpql java-ee

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

机器人网络位置提供商的准确性和快速性如何?

我正在制作天气应用程序,需要知道用于报告人手机附近/周围天气状况的当前位置.

它不一定比100m更准确,而且在恶劣天气下快速(几秒钟),因此用户不会觉得无聊等待结果.

那么,机器人网络位置提供商的准确性和快速性如何?

谢谢!

android geolocation

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

在小型Java应用程序上使用OSGI框架是否合适?

我有一个计划用OSGI框架重新实现我的一个小但有用的应用程序.我从来没有使用它,所以我想在小应用程序上使用OSGI是合适的,并且在使用这样的框架时它在速度和/或内存占用方面有很大差异.此外,如果它是一个不错的选择,我会问哪种实现最适合小型应用程序.

谢谢!

java osgi

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

我在多个意图上得到"未知的服务启动结果"错误

我正在尝试使用从我的活动发送的意图来调用我的服务的某些功能.

这是我从活动发送意图的方式(在UI线程中):

Intent it = new Intent(MyService.INTENT_ACTIVITY_POSITION_CHANGED);
it.setClass(getApplicationContext(), MyService.class);
it.putExtra("posPercentX", x);
it.putExtra("posPercentY", y);
startService(it);
Run Code Online (Sandbox Code Playgroud)

这就是myStartCommand在MyService中的样子:

    @Override
    public int onStartCommand (Intent intent, int flags, int startId){
       super.onStartCommand(intent, flags, startId);

       if(intent.getAction().equals(INTENT_ACTIVITY_START)){
        Toast.makeText(this,"onStartCommand ...", Toast.LENGTH_SHORT).show();
       }else if(intent.getAction().equals(INTENT_ACTIVITY_POSITION_CHANGED)){
        // here comes some code to get extras from intent
        Log.d("INTENT_ACTIVITY_POSITION_CHANGED", "x=" + posX + " y=" + posY);
        //TODO preveri
       }
       return startId;
    }
Run Code Online (Sandbox Code Playgroud)

我接到几个电话后:

ERROR/ActivityManager(52): java.lang.IllegalArgumentException: Unknown service start result: 4
Run Code Online (Sandbox Code Playgroud)

为什么我会收到此错误?任何的想法?

service android android-intent

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