Android アプリ A にはインターネット アクセスがあります。
<uses-permission android:name="android.permission.INTERNET"/>
アプリ B にはインターネット アクセスがありません。だから私はアプリAからアプリBへのインターネットアクセスをPendingIntent
. これがそのPendingIntent
ためですよね。
By giving a PendingIntent to another application, you are granting it the right to perform the operation you have specified as if the other application was yourself (with the same permissions and identity).
これは私PendingIntent
がアプリAで送信する方法です:
Intent mainApp = new Intent(Intent.ACTION_MAIN);
mainApp.addCategory(Intent.CATEGORY_LAUNCHER);
mainApp.setClassName("com.other.package", "com.other.package.MainActivity");
int flags = PendingIntent.FLAG_UPDATE_CURRENT | Intent.FLAG_ACTIVITY_NEW_TASK;
PendingIntent pi = PendingIntent.getActivity(this, 23894729834, mainApp, flags);
try {
pi.send();
}
catch (CanceledException e) { }
これは、アプリ B (launchMode=singleTask を持つ) でそれを受信しようとする方法です。
@Override
protected void onNewIntent(Intent i) {
setIntent(i);
// do some things with Internet access here
}
しかし、うまくいきません!なぜなのかご存知ですか?私は何を間違えましたか?
前もって感謝します!