在android中不调用隐式意图

在android中不调用隐式意图,第1张

概述这是我的 android清单文件: <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name=".view.MainActivity" andro 这是我的 android清单文件:

<application        androID:icon="@drawable/ic_launcher"        androID:label="@string/app_name" >        <activity            androID:name=".vIEw.MainActivity"            androID:label="@string/app_name"             androID:screenorIEntation="reverseLandscape">            <intent-filter>                <action androID:name="androID.intent.action.MAIN" />                <category androID:name="androID.intent.category.LAUNCHER" />                <data                    androID:host="mocha"                    androID:path="/RTT/reset"                    androID:scheme="content" />            </intent-filter>        </activity>        <activity            androID:name="ihpc.mocha.fakertt.vIEw.SessionTimeOutActivity"            androID:label="@string/app_name"             androID:screenorIEntation="reverseLandscape">            <intent-filter>                <action androID:name="androID.intent.action.VIEW" />                <category androID:name="androID.intent.category.DEFAulT" />                <data                    androID:host="mocha"                    androID:path="/RTT/sessionTimeOut"                    androID:scheme="content" />            </intent-filter>        </activity>    </application>

它表明我在这里注册了隐含的意图

<data androID:host="mocha" androID:path="/RTT/reset" androID:scheme="content" />

现在我从另一个应用程序调用

Intent gameInfoIntent = new Intent(Intent.ACTION_VIEW);                gameInfoIntent.setData(Uri.parse("content://mocha/RTT"                         + "/reset"));                gameInfoIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);                PackageManager packageManager = getPackageManager();                List<ResolveInfo> activitIEs = packageManager                        .queryIntentActivitIEs(gameInfoIntent,0);                boolean isIntentSafe = activitIEs.size() > 0;                    if (isIntentSafe) {                    startActivity(gameInfoIntent);                    finish();                } else {                }

它显示没有找到任何活动

"content://mocha/RTT/reset"

我尝试将此代码形式调用相同的活动以用于测试目的,但结果是相同的.

请建议我在哪里以及我做错了什么?

更新:

我可以通过在评论中添加建议的代码来调用会话超时活动.
我更新了我的清单:

        
            
                

<category androID:name="androID.intent.category.LAUNCHER" />        </intent-filter>        <intent-filter>            <action androID:name="androID.intent.action.VIEW" />            <category androID:name="androID.intent.category.broWSABLE" />            <data                androID:host="mocha"                androID:path="/RTT/reset"                androID:scheme="content" />        </intent-filter>    </activity>    <activity        androID:name="ihpc.mocha.fakertt.vIEw.SessionTimeOutActivity"        androID:label="@string/app_name"         androID:screenorIEntation="reverseLandscape">        <intent-filter>            <action androID:name="androID.intent.action.VIEW" />            <category androID:name="androID.intent.category.broWSABLE" />            <data                androID:host="mocha"                androID:path="/RTT/sessionTimeOut"                androID:scheme="content" />        </intent-filter>    </activity></application>

但我仍无法调用主要活动.

解决方法 我通过在清单文件中添加以下行来解决了我的问题

<uses-permission androID:name="androID.permission.INTERNET" /><uses-permission androID:name="androID.permission.ACCESS_NETWORK_STATE" /><uses-permission androID:name="androID.permission.CHANGE_NETWORK_STATE" />

这是我的新外观清单文件

<manifest xmlns:androID="http://schemas.androID.com/apk/res/androID"    package="ihpc.mocha.rtt"    androID:versionCode="1"    androID:versionname="1.0" >    <uses-sdk androID:minSdkVersion="12" />    <uses-permission androID:name="androID.permission.INTERNET" />    <uses-permission androID:name="androID.permission.WRITE_EXTERNAL_STORAGE" />    <uses-permission androID:name="androID.permission.ACCESS_NETWORK_STATE" />    <uses-permission androID:name="androID.permission.CHANGE_NETWORK_STATE" />    <uses-permission androID:name="androID.permission.READ_PHONE_STATE" />    <application        androID:icon="@drawable/ic_launcher"        androID:label="@string/app_name"        androID:largeHeap="true"        androID:theme="@androID:style/theme.NoTitlebar" >        <activity            androID:name="ihpc.mocha.rtt.MainScene"            androID:label="@string/app_name"            androID:screenorIEntation="reverseLandscape" >            <intent-filter>                <action androID:name="androID.intent.action.MAIN" />                <category androID:name="androID.intent.category.LAUNCHER" />            </intent-filter>            <intent-filter>                <action androID:name="androID.intent.action.VIEW" />                <category androID:name="androID.intent.category.DEFAulT" />                <data                    androID:host="mocha"                    androID:path="/RTT/reset"                    androID:scheme="content" />            </intent-filter>        </activity>        <activity            androID:name="ihpc.mocha.rtt.SessionTimeOutActivity"            androID:label="@string/app_name"            androID:screenorIEntation="reverseLandscape" >            <intent-filter>                <action androID:name="androID.intent.action.VIEW" />                <category androID:name="androID.intent.category.DEFAulT" />                <data                    androID:host="mocha"                    androID:path="/RTT/sessionTimeOut"                    androID:scheme="content" />            </intent-filter>        </activity>    </application></manifest>

希望这也有助于其他开发人员!

总结

以上是内存溢出为你收集整理的在android中不调用隐式意图全部内容,希望文章能够帮你解决在android中不调用隐式意图所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1124858.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存