嘿我一直试图在InComingShortcuts.java中收到自定义意图
public class InComingShortcuts extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
SharedPreferences setting = context.getSharedPreferences("settings", 0);
String TAG="PocketModeService";
if(intent.getAction().equals("com.rituj.theoneplus3app.gestures")){
Log.d(TAG, "Got gestures Broadcast");
}
}}
从这个shortcuts.xml:
<shortcuts xmlns:android="http://schemas.android.com/apk/res/android">
<shortcut
android:enabled="true"
android:icon="@drawable/ic_gestures"
android:shortcutDisabledMessage="@string/static_shortcut_disabled_message"
android:shortcutId="static"
android:shortcutLongLabel="@string/static_shortcut_long_label"
android:shortcutShortLabel="@string/static_shortcut_short_label">
<intent
android:action="com.rituj.theoneplus3app.gestures"/>
</shortcut>
</shortcuts>
和AndroidManifest看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="packagename">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="App LAbel"
android:supportsRtl="true"
android:theme="@style/AppThemeLight">
<receiver
android:name="com.rituj.theoneplus3app.InComingShortcuts"
android:enabled="true">
<intent-filter>
<action android:name="com.rituj.theoneplus3app.gestures" />
</intent-filter>
</receiver>
<activity
android:name=".Home"
android:label="Label"
android:theme="@style/AppThemeLight"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data android:name="android.app.shortcuts" android:resource="@xml/shortcuts" />
</activity>
</application>
</manifest>
我正在尝试实现Android Nougat 7.1.1应用程序快捷方式。 它只是没有收到该名称的任何意图。 任何帮助,将不胜感激。 如果用户按下该快捷方式,我需要调用一个特定的方法来膨胀不同的布局。我该怎么做呢。
答案 0 :(得分:0)
我在我的应用中使用了以下内容,您可以在shortcut
xmlm中指定intent
进行相应更改。
<intent
android:action="android.intent.action.VIEW"
android:data="some data"
android:targetPackage="com.x.y.z.debug"
android:targetClass="com.x.y.z.XYZActivity" />
注意com.x.y.z
可以以&#39; debug&#39;结束。如果作为调试版本运行