- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime java.lang.RuntimeException: Unable to start service com.urbanairship.push.PushService@40cfdc08 with Intent { act=com.urbanairship.push.START cmp=com.myapp.myapp/com.urbanairship.push.PushService }: java.lang.IllegalStateException: UAirship.takeOff() must be called every time Application.onCreate() is invoked.
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:2499)
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime at android.app.ActivityThread.access$1900(ActivityThread.java:132)
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1220)
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime at android.os.Handler.dispatchMessage(Handler.java:99)
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime at android.os.Looper.loop(Looper.java:137)
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime at android.app.ActivityThread.main(ActivityThread.java:4575)
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime at java.lang.reflect.Method.invokeNative(Native Method)
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime at java.lang.reflect.Method.invoke(Method.java:511)
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime at dalvik.system.NativeStart.main(Native Method)
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime Caused by: java.lang.IllegalStateException: UAirship.takeOff() must be called every time Application.onCreate() is invoked.
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime at com.urbanairship.push.PushService.onStart(Unknown Source)
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime at android.app.Service.onStartCommand(Service.java:438)
23:03:56.422 21926 com.myapp.myapp:com.urbanairship.process ERROR AndroidRuntime at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:2482)
我正在尝试将 UrbanAirship 集成到我的应用程序中,如果我修改以下行,则在我调用 takeOff 后会抛出上述异常:
<service android:name="com.urbanairship.push.PushService" android:process=":com.urbanairship.process"/>
.. 没有 android:process 部分它可以工作但是当推送消息到达时我的 PushBroadcastReceiver 没有被调用(断点没有命中)
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:versionName="3.61 beta 1"
android:versionCode="71"
android:installLocation="auto" package="com.myapp.myapp">
<uses-sdk android:minSdkVersion="3"
android:targetSdkVersion="4"/>
<uses-feature android:name="android.hardware.camera"/>
<application
android:label="@string/app_name">
<activity android:name=".client.android.SplashScreen"
android:screenOrientation="portrait"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".client.android.CaptureActivity"
android:screenOrientation="landscape"
android:configChanges="orientation|keyboardHidden"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
android:windowSoftInputMode="stateAlwaysHidden">
<intent-filter>
<action android:name="com.myapp.myapp.client.android.CaptureActivity" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity android:name=".client.android.PreferencesActivity"
android:label="@string/preferences_name"
android:screenOrientation="portrait">
</activity>
<activity android:name=".client.android.PushBroadcastReceiver">
</activity>
<activity android:name=".client.android.AboutActivity"
android:label="@string/menu_about">
<intent-filter>
<action android:name="com.myapp.myapp.client.android.AboutActivity" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<receiver android:name="com.urbanairship.CoreReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.ACTION_SHUTDOWN" />
</intent-filter>
</receiver>
<receiver android:name="com.urbanairship.push.c2dm.C2DMPushReceiver"
android:permission="com.google.android.c2dm.permission.SEND">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="com.myapp.myapp" />
</intent-filter>
<intent-filter>
<action android:name="com.google.android.c2dm.intent.REGISTRATION" />
<category android:name="com.myapp.myapp" />
</intent-filter>
</receiver>
<service android:name="com.urbanairship.push.PushService" android:process=":com.urbanairship.process"/>
<receiver android:name="com.myapp.myapp.client.android.PushBroadcastReceiver" />
</application>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"/>
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.FLASHLIGHT"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<permission android:name="com.myapp.myapp.permission.C2D_MESSAGE" android:protectionLevel="signature" />
<uses-permission android:name="com.myapp.myapp.permission.C2D_MESSAGE" />
<!-- This app has permission to register and receive message -->
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
</manifest>
最佳答案
你从哪里调用 takeOff?看起来您没有使用 AutoPilot 或提供在 onCreate 方法中调用起飞的自定义应用程序。
首先创建一个调用 takeOff 的 CustomApplication 类:
public class CustomApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// Optionally, customize your config at runtime:
//
// AirshipConfigOptions options = new AirshipConfigOptions();
// options.inProduction = false;
// options.developmentAppKey = "Your Development App Key";
// options.developmentAppSecret "Your Development App Secret";
//
// UAirship.takeOff(this, options);
UAirship.takeOff(this, new UAirship.OnReadyCallback() {
@Override
public void onAirshipReady(UAirship airship) {
// Perform any airship configurations here
}
});
}
}
然后在 list 中设置应用程序:
<application name="CustomApplication"
我还会从您的 list 中删除进程的使用。它们几乎不再是使用的好主意。它们会使应用程序逻辑复杂化并浪费更多资源。
有关 Urban Airship 的更多信息 - http://docs.urbanairship.com/platform/android.html .
关于android - UrbanAirship 安卓广播接收器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11004347/
媒体存在于外部服务器上,我想在我的 Actor 接收器上播放该媒体( Google's CastReferencePlayer 的修改版本)。接收器与该服务器持续通信(通过长轮询),并在需要播放某个媒
我想将我的 PyQt4 应用程序移植到 PyQt5,但遇到了一个微妙的问题。 有时我会检查自定义 QThread 对象 (worker) 是否仍然连接了一些特定的信号,我在 PyQt4 中已经这样做了
假设我们有 n 台设备,n 为偶数。每个设备都可以作为发射器 (T) 或接收器 (R)。对于每个设备 i,我们都给定了 2 个数字,Ti 和 Ri。 Ti 是设备用作发射器时的成本,Ri 是设备用作接
我想在 android 中创建 airplay,其中我的 android 设备将用作 airplay 服务器(接收器),而 iPhone 设备将用作接收器。我在我的应用程序中使用了 jmdns,它是
简单问题 - 我可以将单个 BroadcastReceiver 注册到多个 Intent 操作吗?这是我正在考虑的: 所以在 myRecei
假设我在 2 个应用程序(应用程序 A 和应用程序 B)的 list 中有以下接收器: 在每个应用程序中,我想创建一个 PendingIntent(如果不存在
我正在尝试向接收方应用程序的关闭事件添加逻辑,但每次发送方断开连接时,调试器都会关闭并且不会执行任何逻辑(例如发送一些 HttpRequest)。我的一段代码: this.context.addEve
我们正在使用flume,我需要将一些日志消息收集到rabbitmq 中。我找到了一个来源 implementation从rabbitmq读取消息,但我找不到可以将消息写入rabbit的接收器。所以我想
我遇到了一个远程异常: “这个远程代理没有 channel 接收器,这意味着服务器没有注册的服务器 channel 正在监听,或者这个应用程序没有合适的客户端 channel 来与服务器通信。” th
我是 WebRTC 的新手,并试图弄清楚如何在浏览器之外创建一个程序,该程序接收 WebRTC 音频流并将其输出到扬声器上。 是否有适用于 Java 或 C# 的 WebRTC 库? 该接收器将在 l
我正在创建一个简单的 Spring Boot 应用程序,我想接收发送到 AMQP(Rabbit)交换(来自另一个应用程序)的消息。 我收到一条错误消息,指出我要接收的队列不存在。当我看 http://
我将 EJB 3.0 与 JBoss AS 7.1.1 Final 一起使用。当我尝试将客户端连接到服务器时出现此错误: Aug 15, 2012 12:05:00 PM org.jboss.ejb.
我正在为 Google Cast SDK 使用 React Native 包装器,但无法从发送方向接收方发送消息。我能够转换媒体或暂停并恢复它。问题仅在于自定义消息。我的自定义消息监听器永远不会在接收
我正在开发自定义 Serilog 接收器,它继承自 PeriodicBatchingSink 并调用我的网络服务将数据写入数据库,使用类似于 Serilog.Sinks.Seq 的模式。使用此代码作为
我想为安卓手机开发一个定制的 FM radio 应用程序,里面有 FM 接收芯片。 通过研究,我发现 FM 接收器通常由 BroadComm 开发。 主要的安卓手机制造商——三星、HTC、索尼爱立信是
我的 android list 中有一个 Intent 接收器,但我想让用户有机会选择他/她是否希望应用程序在特定状态下自动启动。到目前为止,我一直在使用带有广播接收器的服务,但我真的很想删除这个服务
我正在做一个如果我们摇动手机就锁屏的应用程序,我已经写了屏幕关闭的代码,但现在的问题是我需要一个广播接收器来检查屏幕是关闭还是打开,我怎么能做吗? 最佳答案 如果您需要在特定时刻检查屏幕是否关闭或打开
我让 MySQL 在一页上生成具有相同操作和提交按钮的表单。表格的数量各不相同。它们在提交时都调用同一个 PHP 文件。另外,我有一个 PHP 文件,它在提交时收集数据。请参见下面的示例。 问题是当提
谁能给我一个例子,说明如何在 Activity 类中正确取消注册 LocalBroadcastManager 接收器? Android 开发人员培训建议这样做: @Override publ
有问题的代码: func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
我是一名优秀的程序员,十分优秀!