自定义cordova插件的高级使用

本文主要介绍带SDK的cordova插件的编写,如有疑问可以留言,互相学习大笑

带SDK的插件与不带其实差别并不大,但是网上的资料介绍的确各有不同,参照着写完发现还是不行,其实是因为cordova也在不停的更新,可能老的方法不适用了。

下面我会解释一个可以用的方法。

1.在AndroidManifest.xml文件中添加service和activty

 

<config-file target="AndroidManifest.xml" parent="/manifest/application">
	<service
		android:name="com.tets.Service"
		android:enabled="true"
		android:exported="true" />
			
	<activity
		android:name="com.test.Activity2"
		android:theme="@android:style/Theme.Translucent" />
	<activity
		android:name="com.test.Activity">
		<intent-filter>
			<action android:name="android.intent.action.MAIN" />

			<category android:name="android.intent.category.DEFAULT" />
		</intent-filter>
	</activity>
</config-file>	<action android:name="android.intent.action.MAIN" />

			<category android:name="android.intent.category.DEFAULT" />
		</intent-filter>
	</activity>
</config-file>

 

2.添加用到的文件

 

如:java文件、.aar的包、用到的.xml文件或者图片

src:表示的是你得java文件放在cordova插件的目录下的那个位置

target-dir:表示的是你要把这个文件放在生成的android的那个包名下

最最最重要的是java文件的包名一定要和target-dir的包名一样,不然会报错

比如   下面的这行代码cordova插件src下的android目录下有个test.java文件如果使用这个插件test.java文件就会出现在android工程的src/com/lmr/test的目录下。(.xml文件和图片是同样的方法)

 

<source-file src="src/android/test.java" target-dir="src/com/lmr/test"/>

最重要的添加.aar文件

 

需要在cordov的目录下创建一个.gradle文件,把你的.arr所需要的配置编写到这个文件中

 

<framework src="src/android/ScreenShare.gradle" custom="true" type="gradleReference" />
<source-file src="src/android/libs/LiteAVSDK_Professional_3.aar" target-dir="libs"/>

 

例如下面这样把arr文件的配置填到你说创建的.gradle文件中

 

android {
    useLibrary 'org.apache.http.legacy'
}

allprojects {
    repositories {
        flatDir {
            dirs 'libs'
        }
    }
}

dependencies {
    
    compile(name: 'LiteAVSDK_Professional_3', ext: 'aar')
}

 

 

 

注意:

R文件获取不到需要自己另写方法获取。

如果要获取activity可以使用cordova.getActivity()

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章