<div dir="ltr">Hi Rob,<div><br></div><div>Yes it should also start your app when the app is not running or suspended, but it depends on heuristics of how much the user uses your app also something to keep in mind is that:</div><div><br></div><div>If the user rebooted his device and never launched the app since the reboot, the app will never wake up remotely and if the user killed the app manually from the app switcher, the app will also never wake up remotely.</div><div><br></div><div>I created a small app similar to your use-case where I do a http request when the content-available flag is set:</div><div><br></div><div><pre style="overflow:auto;font-family:Consolas,&#39;Liberation Mono&#39;,Menlo,Courier,monospace;font-size:13.6px;margin-top:0px;margin-bottom:0px;font-stretch:normal;line-height:1.45;padding:16px;border-radius:3px;word-wrap:normal;color:rgb(51,51,51);background-color:rgb(247,247,247)"><pre style="overflow:auto;font-family:Consolas,&#39;Liberation Mono&#39;,Menlo,Courier,monospace;font-size:13.6px;margin-top:0px;margin-bottom:0px;font-stretch:normal;line-height:1.45;padding:16px;border-radius:3px;word-wrap:normal"><span style="color:rgb(121,93,163)">onNotification</span><span style="color:rgb(167,29,93)">:</span> <span style="color:rgb(167,29,93)">function</span>(<span>event</span>) {
    <span style="color:rgb(167,29,93)">if</span> (<span style="color:rgb(0,134,179)">event</span>[<span style="color:rgb(24,54,145)"><span>&#39;</span>content-available<span>&#39;</span></span>] <span style="color:rgb(167,29,93)">===</span> <span style="color:rgb(0,134,179)">1</span>) {
        <span style="color:rgb(121,93,163)">ajax</span>({
            url<span style="color:rgb(167,29,93)">:</span> <span style="color:rgb(24,54,145)"><span>&quot;</span><a href="http://192.168.0.30:8888/index.php" target="_blank">http://192.168.0.30:8888/index.php</a><span>&quot;</span></span>,
            dataType<span style="color:rgb(167,29,93)">:</span> <span style="color:rgb(24,54,145)"><span>&quot;</span>text<span>&quot;</span></span>
        })
        .<span style="color:rgb(121,93,163)">then</span>( <span style="color:rgb(167,29,93)">function</span>( <span>result</span> ) {
            <span style="color:rgb(121,93,163)">console</span>.<span style="color:rgb(0,134,179)">log</span>(result);
            <span>push</span>.<span style="color:rgb(121,93,163)">setContentAvailable</span>(<span>push</span>.<span>FetchResult</span>.<span>NewData</span>);
        });
    }</pre></pre></div><div><div class="gmail_extra"><br></div><div class="gmail_extra">When I send a message with only content-available set like this:</div><div class="gmail_extra"><pre style="overflow:auto;font-family:Consolas,&#39;Liberation Mono&#39;,Menlo,Courier,monospace;font-size:13.6px;margin-top:0px;margin-bottom:0px;font-stretch:normal;line-height:1.45;padding:16px;border-radius:3px;word-wrap:normal;color:rgb(51,51,51);background-color:rgb(247,247,247)"><span style="color:rgb(167,29,93)">~</span>/w/t/background-fetch ❯❯❯ curl -u <span style="color:rgb(24,54,145)"><span>&quot;</span>73795055-123-462d-a6dd-4ad514c3afbf:123456-617f-47d4-a03b-f9ce89b7ec2b<span>&quot;</span></span>  \
-v -H <span style="color:rgb(24,54,145)"><span>&quot;</span>Accept: application/json<span>&quot;</span></span> -H <span style="color:rgb(24,54,145)"><span>&quot;</span>Content-type: application/json<span>&quot;</span></span>  \
-X POST  -d \
<span style="color:rgb(24,54,145)"><span>&#39;</span>{</span>
<span style="color:rgb(24,54,145)">&quot;message&quot;: {</span>
<span style="color:rgb(24,54,145)">&quot;content-available&quot; : true</span>
<span style="color:rgb(24,54,145)">}</span>
<span style="color:rgb(24,54,145)">}<span>&#39;</span></span>  \
<a href="https://ups-me.rhcloud.com/ag-push/rest/sender" target="_blank">https://ups-me.rhcloud.com/ag-push/rest/sender</a></pre></div><div class="gmail_extra"><br></div><div class="gmail_extra">It sometimes calls my server, but not always and sometimes takes some time to activate the app. Again this is something that apple implemented the app is woken up / started by the os and there is nothing we can do about this.</div><div class="gmail_extra"><br></div><div class="gmail_extra">You could also send a notification + content-available that way the notification can be used to start the app or if there was no network the app will react before the user &#39;touches&#39; the app.</div><div class="gmail_extra"><br></div><div class="gmail_extra">Hope this clears things up.</div><div class="gmail_extra"><br>
</div></div></div>