android-在共享操作上打开不可见活动(ACTION_SEND)
作者:互联网
在StackOverfow上有很多类似的问题,但是它们不能解决我的问题.
任务是处理通过不同应用程序使用默认共享机制(ACTION_SEND)发送的服务意图.
但就ACTION_SEND是一项活动动作而言,我们必须选择活动意图并将其广播给服务.如果用户看不到该活动,那将是完美的.
我已经研究了很多,并且已经尝试了许多解决方案.
>使活动不可见的第一步属于活动样式.
我已经试过这个值.
android:theme =“ @ android:style / Theme.Translucent.NoTitleBar”
android:theme =“ @ android:style / Theme.Translucent”
android:theme =“ @ android:style / Theme.Translucent.NoTitleBar.Fullscreen”
我也尝试创建自定义主题.
<style name="Theme.Transparent" parent="android:Theme">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">true</item>
</style>
AndroidManifest.xml中的活动如何.
<activity
android:name="xxx.xxx.activities.HandleShareIntentActivity"
android:theme="@style/Theme.Transparent"
android:noHistory="true"
android:excludeFromRecents="true"
android:label="@string/title_activity_handle_share_intent">
<intent-filter>
<action android:name="com.google.android.gm.action.AUTO_SEND"/>
<action android:name="android.intent.action.SEND"/>
<action android:name="android.intent.action.SEND_MULTIPLE"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="com.google.android.voicesearch.SELF_NOTE"/>
<data android:mimeType="*/*"/>
</intent-filter>
</activity>
>活动代码.没有setContentView().在onCreate()中的finish()中.
public class HandleShareIntentActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
startService(new Intent(this, xxxService.class).putExtra(
Constants.ACTION_SHARE_KEY, getIntent()));
finish();
}
}
在Nexus 5上,Android 4.4.4确实在处理任何共享事件时黑屏闪烁.
有什么办法吗?
解决方法:
I’ve tried this values.
使用Theme.NoDisplay.
标签:android-intent,android-activity,android-sharing,android 来源: https://codeday.me/bug/20191121/2048228.html