标签: urbanairship.com

Urban Airship:默认状态栏通知的自定义图标

CustomPushNotificationBuilder如果您想对状态栏通知进行任何修改,Urban Airship建议您创建自定义通知,包括轻松更改图标.

不幸的是,使用RemoteViewfor通知会带来许多与自定义制造商和/或平台特定皮肤相关的不必要的含义,包括文本颜色和对私有资源的引用(例如@*android:drawable/notify_panel_notification_icon_bg_tile在Honeycomb/ICS上).

必须有一种简单的方法来交换图标而不使用RemoteView.怎么样?

android urbanairship.com android-notifications android-notification-bar

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

使用Urban Airship&Phonegap,无法注册设备:"设备令牌为零"

从git hub(https://github.com/urbanairship/phonegap-ua-push)上的最新示例,以及Phonegap/Cordova最新版v2.3.0的全新版本,我们在iOS注册设备时遇到了麻烦UA.在我们更新到最新版之前,我们没有问题.我们正在注册这样的设备:

function on_reg(error, pushID) {
    console.log("UA Registration complete.")
}

push = window.pushNotification
push.registerEvent('registration', on_reg)
Run Code Online (Sandbox Code Playgroud)

但每当我们调用该代码时,我们会收到一条错误消息" 设备令牌为零.稍后将尝试注册 ".除非从未发生过.

这是日志:

2013-01-09 17:38:29.378分组[271:907] [D] - [UAPush updateRegistration] [第589行]检查注册状态

2013-01-09 17:38:29.380分组[271:907] [D] - [UAPush updateRegistration] [第609行]设备令牌为零.稍后将尝试注册

2013-01-09 17:38:29.744分组[271:907] [D] + [UAKeychainUtils getDeviceID] [第275行]从钥匙串中检索设备ID信息.

2013-01-09 17:38:29.745分组[271:907] [D] + [UAKeychainUtils getDeviceID] [第279行]设备ID结果不是nil.

2013-01-09 17:38:29.746分组[271:907] [D] + [UAKeychainUtils getDeviceID] [第288行]已加载设备ID:C1E75722-ED34-4513-BBA5-CB9EDEBBD117

2013-01-09 17:38:29.747分组[271:907] [D] + [UAKeychainUtils getDeviceID] [第289行]已加载型号名称:iPhone4,1

2013-01-09 17:38:32.724分组[271:907] [D] - [UAAnalytics requestDidSucceed:response:responseData:] [Line 461] Google Analytics数据已成功发送.状态:200

我们做错了什么?

urbanairship.com ios cordova

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

当应用程序在前台运行时收到iOS推送通知

根据我的理解,当应用程序正在运行或在前台并且收到推送通知时,应用程序不应显示任何警报,但应用程序委托将调用didReceiveRemoteNotification委托方法,我应该在该回调中处理推送通知.

当应用程序在后台时,推送通知应仅显示警报/横幅.

但是,我们的应用程序在应用程序运行时或在某个时间(而不是所有时间)在前台获得推送通知警报.我想知道它是否是iOS 7中的新功能(我从未听说过这个)或是因为我正在使用用户的UrbanAirshipiOS应用程序的推送通知alias.该应用程序将在运行时显示推送警报并运行回调didReceiveRemoteNotification.

抓住我的头.有谁知道为什么?

objective-c apple-push-notifications urbanairship.com ios

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

Google App Engine(GAE),Urban Airship,Java,推送通知.示例代码?

我的服务器在GAE(Java)上运行,我正在使用Urban Airship服务来提供推送通知.当然,当我使用他们的网络界面发送测试通知时,一切正常,但我想在我的GAE app/server中添加一个测试按钮,让它触发UA发送推送.

问题是,到目前为止我看到的所有示例都没有针对GAE的Java库进行编译.

有没有人有任何他们想要分享构建的Java示例代码并在GAE下运行以通过Urban Airship触发推送通知?

谢谢!

iphone google-app-engine push-notification urbanairship.com

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

Urban Airship崩溃app

我试图在我的Android应用程序中集成Urban Airship PUSH通知时遇到问题.

我认为我在AndroidManifest集中拥有所有权限和意图过滤器,但是在尝试设置我的AirshipConfigOptions之后,应用程序立即崩溃:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    AirshipConfigOptions options = AirshipConfigOptions.loadDefaultOptions(this);
    ...
}
Run Code Online (Sandbox Code Playgroud)

我的错误日志说:

java.lang.NoClassDefFoundError: com.urbanairship.AirshipConfigOptions
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激.

android push noclassdeffounderror urbanairship.com

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

Urban Airship - 使用NSURLConnection发送推送

我正在研究一个简单的原型,需要测试从一个设备向另一个设备发送推送通知.

我已通过电子邮件发送Urban Airship为我的应用程序打开"允许从设备推送" - 他们确实打开了它.

我正在尝试使用NSURLConnection从设备发送推送通知.

这是我的代码:

- (void) test {
    NSMutableURLRequest * request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://go.urbanairship.com/api/push"]];
    [request setHTTPMethod:@"POST"];
    [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];

    NSDictionary * push = @{@"device_tokens":@[@"<token>"], @"aps":@{@"alert":@"TEST", @"sound":@"default"}};
    NSData * pushdata = [NSJSONSerialization dataWithJSONObject:push options:0 error:NULL];
    [request setHTTPBody:pushdata];

    [NSURLConnection connectionWithRequest:request delegate:self];
}

- (void) connection:(NSURLConnection *) connection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *) challenge {
    if([challenge.protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodHTTPBasic]) {
        NSURLCredential * credential = [[NSURLCredential alloc] initWithUser:@"<app key>" password:@"<app secret>" persistence:NSURLCredentialPersistenceForSession];
        [[challenge sender] useCredential:credential forAuthenticationChallenge:challenge];
        [credential release];
    }
}

- (void) connection:(NSURLConnection *) connection …
Run Code Online (Sandbox Code Playgroud)

push objective-c urbanairship.com ios

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

未知类型名称'UIBackgroundFetchResult'

我正在尝试为我的一个iOS应用程序配置UrbanAirship.我已按照教程页面上的说明完成了配置:http: //docs.urbanairship.com/build/ios.html

但是当我构建项目时,我收到以下错误: Unknown type name 'UIBackgroundFetchResult'

错误在文件UAPush.h中发生了四次(从UrbanAirship网站下载)我也尝试在UrbanAirship教程页面上运行zip文件中提供的示例代码,它也有同样的问题.还有其他人面临同样的问题吗?任何帮助将受到高度赞赏.

push-notification apple-push-notifications urbanairship.com

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

Android:Urban Airship 6.0.1:android:提升找不到与给定名称匹配的资源

我正在尝试将Urban Airship Library添加到我的项目中.我完全按照步骤操作,但是当我构建时,我得到了这个错误

No resource found that matches the given name: attr'android:elevation'


    <?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- From: file:/Users/build/workspace/android-library/UrbanAirship/src/main/res/values-v21/styles.xml -->
    <eat-comment/>
    <style name="Widget.UrbanAirship.InAppMessage.Banner" parent="Base.Widget.UrbanAirship.InAppMessage.Banner">
        <item name="android:background">@drawable/ua_iam_background</item>
        <item name="android:elevation">@dimen/ua_iam_banner_elevation</item>
    </style>
</resources>
Run Code Online (Sandbox Code Playgroud)

这是我的gradle文件依赖项

compile 'com.android.support:support-v4:22.0.0'
compile 'com.android.support:cardview-v7:22.0.0'
compile 'com.google.android.gms:play-services-gcm:7.0.0'
compile 'com.google.android.gms:play-services-location:7.0.0'
Run Code Online (Sandbox Code Playgroud)

我的targetSdkVersion是21,我还从SDK管理器更新了我的API

http://docs.urbanairship.com/platform/android.html供参考

请帮我.谢谢!

更新1:Android部分在gradle中

android {
    compileSdkVersion 19
    buildToolsVersion "21.1.1"

    defaultConfig {
        applicationId "com.example"
        minSdkVersion 14
        targetSdkVersion 21
        multiDexEnabled true
        renderscriptTargetApi 22
        renderscriptSupportModeEnabled true
    }

    dexOptions {
        javaMaxHeapSize "4g"
    }

    packagingOptions {
        exclude 'META-INF/DEPENDENCIES.txt'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
        exclude 'META-INF/NOTICE' …
Run Code Online (Sandbox Code Playgroud)

android urbanairship.com

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

共享之前必须调用城市飞艇起飞(仅限 Kit Kat)

我正在尝试学习如何使用城市飞艇发送推送通知,为此,我创建了一个非常简单的使用它的虚拟应用程序。

该应用程序有一个自定义自动驾驶仪和一个自定义通知工厂,以便测试某些功能。在 API 版本 >19 的 Android 上一切正常。

但是,对于版本 19(我需要支持的最低版本)的设备,自动驾驶仪永远不会初始化,因此,每当我尝试访问UAutopilot.shared()...应用程序时,都会因错误而崩溃

共享之前必须调用起飞

即使打电话也Autopilot.autoTakeoff(application)解决不了问题。

主要活动:

public class MainActivity extends AppCompatActivity{

    TextView mTextView;
    Button mButton;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        mTextView = (TextView) findViewById(R.id.text);
        mButton = (Button)findViewById(R.id.button2);
        mButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                mTextView.setText(UAirship.shared().getPushManager().getChannelId());
            }
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

定制自动驾驶仪:

class CustomAutopilot extends Autopilot {

@Override
public void onAirshipReady(UAirship airship) {
    Logger.info("onAirshipReady");
    airship.getPushManager().setUserNotificationsEnabled(true);
    airship.getPushManager().setNotificationFactory(new CustomNotificationFactory(UAirship.getApplicationContext()));
}

@Nullable
@Override
public AirshipConfigOptions createAirshipConfigOptions(@NonNull Context context) { …
Run Code Online (Sandbox Code Playgroud)

android urbanairship.com

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

Urban Airship iOS在UIWebView上显示消息体

有没有人在iOS上做过这样的事情?这是挑战,在我的应用程序中我已经配置了UrbanAirship方法并且可以访问用户当前的消息作为UAInboxMessage数组并将它们显示在一个表格中,其中单元格标题为其消息title,ok ...现在,查看每个对象属性,他们有一个messageURLmessageBodyURL,当我请求那些url的Urban请求凭据时,好的,当我触摸我的tableView上的一行时,我将消息发送给DetailViewController作为属性,在该视图中我有一个UIWebView,我想要的是显示消息Rich content,这是以前在Urban Console中配置的html,在我的DetailViewController的UIWebView中,所以我试图通过UAWebViewCallData发送它网址,网页浏览和消息,但没有运气......

[UAWebViewCallData callDataForURL:message.messageBodyURL webView:_webView message:message];
Run Code Online (Sandbox Code Playgroud)

没工作.

我尝试将UA自定义委托设置为我的webview,如UAWebViewDelegate以获取信息,并且我失败了,这些委托从未被调用过.

并手动显示文档https://docs.urbanairship.com/platform/ios/#display

并且再次没有工作,然后在Android上找到一个朋友,有一个UAWebView自定义类,他可以从中扩展其webview,只是写这个,消息正文显示

extendedWebView.loadRichPushMessage(this.message);
Run Code Online (Sandbox Code Playgroud)

尝试在iOS上找到类似但没有运气的东西.

请帮忙!!

iphone objective-c urbanairship.com ios

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