标签: explicit-intent

Android隐含意图VS显式意图

使用android我意识到隐含意图在大多数情况下是很好的选择,因为它们具有灵活性.但是什么是显性意图呢?使用它们有什么好处?什么是常见的情况,使用它们是一个好习惯?

android android-intent android-implicit-intent explicit-intent

59
推荐指数
6
解决办法
7万
查看次数

android中的显式和隐式活动调用有什么不同?

android中显式和隐式活动调用有什么区别?如果用简单的例子解释答案就会很好.

android android-activity android-implicit-intent explicit-intent

37
推荐指数
2
解决办法
4万
查看次数

谁能告诉我如何使用flutter打开另一个应用程序?

我想使用我在 firebase 中的链接数据打开一堆音乐应用程序链接。我想打开,amazonPrimeMusic、Ganna、Spotify、Wynk、JioSavaan 等等。

Widget buildResultCard(data) {
  List items = [Text(data['Ganna']),
    IconButton(icon:Icon(Icons.all_inclusive),
      onPressed: ()=> {Text("Ganna")}
    ),

    Text(data['Wynk']),
    IconButton(icon:Icon(Icons.all_inclusive),
      onPressed: ()=> {Text("Ganna")}
    ),

    Text(data['JioSavaan']),
    IconButton(icon:Icon(Icons.all_inclusive),
      onPressed: ()=> {Text("Ganna")}
    ),

    Text(data['PrimeMusic']),
    IconButton(icon:Icon(Icons.all_inclusive),
      onPressed: ()=> {Text("Ganna")}
    )
  ];

  return ListView.builder(
    padding: EdgeInsets.only(top: 20),
    itemCount: items.length,
    itemBuilder: (BuildContext context, int index) {
      return items[index];
    },
  );
}
Run Code Online (Sandbox Code Playgroud)

当我点击列表中的按钮时,它应该打开链接所在的特定应用程序,例如 AmazonPrimeMusic 链接,它应该打开亚马逊音乐应用程序。

dart explicit-intent flutter

10
推荐指数
4
解决办法
2万
查看次数

使用显式意图在不同的应用程序中启动活动

我编写了两个不同的应用程序,我们将它们称为 AppA 和 AppB。我正在尝试使用意图从 AppB 启动 AppA 中的活动。我正试图以明确的意图来实现这一目标。

在 AppB 中,我创建如下意图:

 ComponentName cn = new ComponentName("com.example.user.appa",
            "appaActivity");
    Intent infoIntent = new Intent();
    infoIntent.setComponent(cn);
    infoIntent.setAction("com.example.DO_SOMETHING");
    infoIntent.putStringArrayListExtra("arrList", incInfo);
    startActivity(infoIntent);
Run Code Online (Sandbox Code Playgroud)

在 AppA 的 AndroidManifest.xml 中,我包含了以下内容:

<activity
     android:name=".appaActivity"
     android:label="@string/title_activity">
     <intent-filter>
         <action android:name="com.example.DO_SOMETHING"/>
     </intent-filter>
</activity>
Run Code Online (Sandbox Code Playgroud)

当我尝试运行 AppB(将 Intent 发送到 AppA)时,出现以下错误:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.user.appb/com.example.user.appb.MainActivity}: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.user.appa/appaActivity}; have you declared this activity in your AndroidManifest.xml?
Run Code Online (Sandbox Code Playgroud)

因为我可以清楚地看到我已经在 AppA AndroidManifest.xml 中定义了 appaActivity,所以谁能告诉我我可能会忽略什么?

android android-intent explicit-intent

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

从命令行打开特定的 Activity

我正在尝试从命令行启动特定的活动。我正在为 Android O (api 26) 构建应用程序,并且我尝试显式启动该活动来模拟深层链接

活动清单

<activity
        android:name=".activities.ChatActivity"
        android:label="@string/chat_action_bar_title"
        android:launchMode="singleTask"
        android:screenOrientation="portrait">
        <intent-filter>
            <action android:name="android.intent.action.VIEW"/>
            <category android:name="android.intent.category.BROWSABLE"/>
            <category android:name="android.intent.category.DEFAULT"/>
        </intent-filter>
    </activity>
Run Code Online (Sandbox Code Playgroud)

我的包是:package="com.my.app"

我正在使用这个命令:

adb shell am start  -n com.my.app.activities/.ChatActivity
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

    Starting: Intent { cmp=com.my.app.activities/.ChatActivity }
Error type 3
Error: Activity class {com.my.app.activities/com.my.app.activities.ChatActivity} does not exist.
Run Code Online (Sandbox Code Playgroud)

我尝试添加

 -a android.intent.action.VIEW
Run Code Online (Sandbox Code Playgroud)

-c android.intent.category.DEFAULT
Run Code Online (Sandbox Code Playgroud)

但我无法开始该活动,

我究竟做错了什么?

shell android android-manifest android-intent explicit-intent

2
推荐指数
1
解决办法
994
查看次数